antville/code/Site/$Site.skin

268 lines
8.8 KiB
Text

<% #href %>
<% param.path %>
<% #include %>
document.writeln('<' + 'scr' + 'ipt type="text/javascript"' +
'src="<% param.href %>"></' + 'scr' + 'ipt>');
<% #listItem %>
<tr>
<td class="small" style="text-align: right; vertical-align: baseline; white-space: nowrap;">
<% site.modified short %>
</td>
<td style="vertical-align: baseline; padding-left: 10px;"><% site.title | site.link %></td>
</tr>
<% #menuExt %>
<script type="text/javascript" defer="defer">
<!--
var win = external.menuArguments;
var url = "<% site.url %>stories/create?content_text=";
var link = escape('<a href="' + win.location.href + '">' +
win.document.title + "</a>: ");
var text = escape(win.document.selection.createRange().text);
win.location.href = url + link + text;
//-->
</script>
<% #menuExtRegistry %>
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Post to <% site.title %>]
@="<% site.url %>menuext"
"contexts"=hex:31
<% #referrers %>
<p class="storyTitle"><% response.title %></p>
<br />
<form action="<% response.action %>" method="get">
<input type="text" name="filter" value="<% request.filter encoding="form" %>"
size="30" />
<button type="submit" name="submit" value="1"><% gettext Filter %></button>
<button onclick="document.location='<% site.href referrers %>'; return false;">
<% gettext Reset %></button>
<div class="small">
<input type="checkbox" id="includeSpam" name="includeSpam" value="checked"
<% request.includeSpam prefix='checked="' suffix='"' encoding="form" %> />
<label for="includeSpam"><% gettext 'Display the referrers unfiltered' %></label>
</div>
<br />
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td align="right" class="small"><% gettext Hits %></td>
<td width="10" nowrap="nowrap" rowspan="999"> </td>
<td></td>
<td class="small"><% gettext Referrer %></td>
</tr>
<script type="text/javascript">
var referrers = [];
<% site.referrers %>
var query = new Antville.Query();
var spamFilter = new Antville.Filter([<% site.spamfilter %>]);
var searchFilter = new Antville.Filter(query.filter);
var searchEngineFilters = [
new Antville.Filter("http:\/\/.*google.*\?", "q"),
new Antville.Filter("http:\/\/.*search\.msn.*\?", "q"),
new Antville.Filter("http:\/\/.*altavista.*\?", "q"),
new Antville.Filter("http:\/\/.*search\.yahoo.*\?", "p"),
new Antville.Filter("http:\/\/search\.live\.com.*\?", "q")
];
for (var i in referrers) {
var ref = referrers[i];
var text = ref.text;
var isSpam = spamFilter.test(ref.url);
if (isSpam && !query.includeSpam)
continue;
if (query.filter && !searchFilter.test(ref.url))
continue;
var done = false;
for (var e in searchEngineFilters) {
var filter = searchEngineFilters[e];
if (!done && filter.test(ref.url)) {
text = ref.compose(filter.key, "<em>Search request:</em> ");
done = true;
}
}
document.writeln('<tr>');
document.writeln('<td align="right" valign="top">', ref.count, '</td>');
document.write('<td valign="top">');
if ("<% membership.role %>" === "Owner") {
document.write('<input type="checkbox" name="permanent" value="',
ref.url, '" />');
}
document.writeln('</td>');
document.writeln('<td><a href="', ref.url, '"', (isSpam ?
' style="<% value "Small font color" prefix="color: " %>"' : ''),
'>', text, '</a></td>');
document.writeln('</tr>');
}
</script>
<noscript>
<tr>
<td colspan="3">
<% site.skin $Site#noscript %>
</td>
</tr>
</noscript>
</table>
</form>
<% #referrer %>
referrers.push(new Antville.Referrer("<% param.referrer %>",
"<% param.text %>", <% param.requests %>));
<% #noscript %>
<% gettext "To make spamming referrers and backlinks useless, they are displayed using client-side JavaScript. To see them, your browser needs to be set to permit the execution of JavaScript." %>
<% #deleted %>
<% gettext "This site is going to be deleted completely and irreversibly after {0}."
<% site.deleted | format long %> %>
<% #export %>
<p class="storyTitle"><% gettext "Export Site Data" %></p>
<div class="ample">
<p><% if <% param.status %> is null then <% if <% file.self %> is null then '' else <% gettext "Download file {0}."
<% file.skin File#main %> '<small>'
<% file.created | format short %> '</small>' %> %> else <% param.status %> %></p>
<form action="" method="post">
<button type="submit" name="submit" value="<% if <% param.status %> is null then start else stop %>">
<% if <% param.status %> is null then <% gettext Start %> else <% gettext Stop %> %>
</button>
<a href="" class="cancel"><% gettext Cancel %></a>
</form>
</div>
<% #import %>
<p class="storyTitle"><% gettext 'Import Site Data' %></p>
<div class="ample">
<p><% if <% file.self %> is null then '' else <% gettext "The site is scheduled for importing the file {0}. The imported site data will be available within 24 hours."
<% file.skin File#main %> '</a>' '<small>'
<% file.created | format short %> '</small>' %> %></p>
<form method="post" enctype="multipart/form-data">
<% if <% file.self %> is null then <% site.upload file prefix=<p> suffix=</p> %> %>
<button type="submit" name="submit" value="<% if <% file.self %> is null then start else stop %>">
<% if <% file.self %> is null then <% gettext Start %> else <% gettext Stop %> %>
</button>
<a href="" class="cancel"><% gettext Cancel %></a>
</form>
</div>
<% #edit %>
<p class="storyTitle"><% response.title %></p>
<form id="prefs" method="post" action="<% response.action %>">
<table border="0" cellspacing="0" cellpadding="2">
<colgroup>
<col width="150" />
<col width="*" />
</colgroup>
<tr>
<td colspan="2">
<a id="general" name="general"></a>
<strong><% gettext General %></strong>
</td>
</tr>
<tr>
<td class="small"><% gettext Mode suffix=: %></td>
<td><% site.select mode %></td>
</tr>
<tr>
<td class="small"><% gettext Title suffix=: %></td>
<td><% site.input title size=40 %></td>
</tr>
<tr>
<td class="small"><% gettext Tagline suffix=: %></td>
<td><% site.input tagline size=40 %></td>
</tr>
<tr>
<td class="small"><% gettext Paging suffix=: %></td>
<td><% site.input pageSize size="5" maxlength="2" %>
<% gettext "{0} per page" <% gettext "days" %> %></td>
<% // site.select pageMode %>
</tr>
<tr>
<td class="small"><% gettext Comments suffix=: %></td>
<td><% site.checkbox commentMode %>
<label for="commentMode"><% gettext enabled %></label></td>
</tr>
<tr>
<td class="small"><% gettext Archive suffix=: %></td>
<td><% site.checkbox archiveMode %>
<label for="archiveMode"><% gettext enabled %></label></td>
</tr>
<tr>
<td class="small"><% gettext Language suffix=: %></td>
<td><% site.select locale %></td>
</tr>
<tr>
<td class="small"><% gettext "Time Zone" suffix=: %></td>
<td><% site.select timeZone %></td>
</tr>
<tr>
<td class="small"><% gettext "Long Date Format" suffix=: %></td>
<td><% site.select longDateFormat %></td>
</tr>
<tr>
<td class="small"><% gettext "Short Date Format" suffix=: %></td>
<td><% site.select shortDateFormat %></td>
</tr>
<tr>
<td class="small"><% gettext Notifications suffix=: %></td>
<td><% site.select notificationMode %></td>
</td>
</tr>
<tr>
<td class="small" valign="top"><% gettext "Callback URL" suffix=: %></td>
<td><% site.input callbackUrl size=40 %><br />
<% site.checkbox callbackMode %>
<label for="callbackMode"><% gettext enabled %><label></td>
</tr>
<tr>
<td class="small"><% gettext "Disk Space" %>:</td>
<td><% site.diskspace %></td>
</tr>
<tr>
<td colspan="2"><div class="listSeparator"> </div>
<a id="spamfilter" name="spamfilter"></a>
<strong><% gettext "Referrer Spam Filter" %></strong>
</td>
</tr>
<tr>
<td class="small" valign="top"><% gettext "Enter one filter {0}pattern{1} per
line to be applied on every URL in the referrer and backlink lists."
'<a href="http://en.wikipedia.org/wiki/Regular_expression">' </a> %></td>
<td valign="top"><% site.textarea spamfilter cols="30" rows="7" %></td>
</tr>
<tr>
<td></td>
<td><br />
<button type="submit" name="save" value="1"><% gettext Save %></button>
<a href="" class="cancel"><% gettext Cancel %></a>
</tr>
</table>
</form>
<% #notify_blocking %>
<% gettext 'Hello {0}.' <% membership.name %> %>
<% gettext 'This message wants to inform you that in {0} the site {1} will be
blocked because it is being restricted for too long.' <% ngettext
'{0} day' '{0} days' <% root.phaseOutGracePeriod %> %> <% site.name %> %>
<% gettext "Best regards." %>
<% gettext "The Management" %>
--
[1] <% this.href %>
<% #notify_deletion %>
<% gettext 'Hello {0}.' <% membership.name %> %>
<% gettext 'This message wants to inform you that in {0} the site {1} will be
deleted because it has been considered as abandoned.' <% ngettext
'{0} day' '{0} days' <% root.phaseOutGracePeriod %> %> <% site.name %> %>
<% gettext "Best regards." %>
<% gettext "The Management" %>
--
[1] <% this.href %>