2e9bbf66f0
* Add a "Google Cache (text only)" option, using Google's "stripped" cache, which does not reference images, style sheets, etc. Waiting for translations to be released.
247 lignes
9,4 Kio
HTML
247 lignes
9,4 Kio
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!DOCTYPE html [
|
|
<!ENTITY % htmlDTD
|
|
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"DTD/xhtml1-strict.dtd">
|
|
%htmlDTD;
|
|
<!ENTITY % netErrorDTD
|
|
SYSTEM "chrome://global/locale/netError.dtd">
|
|
%netErrorDTD;
|
|
<!ENTITY % globalDTD
|
|
SYSTEM "chrome://global/locale/global.dtd">
|
|
%globalDTD;
|
|
<!ENTITY % dialogOverlayDTD
|
|
SYSTEM "chrome://global/locale/dialogOverlay.dtd">
|
|
%dialogOverlayDTD;
|
|
<!ENTITY % resurrectDTD
|
|
SYSTEM "chrome://resurrect/locale/overlay.dtd">
|
|
%resurrectDTD;
|
|
]>
|
|
|
|
<!-- ***** BEGIN LICENSE BLOCK *****
|
|
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
|
-
|
|
- The contents of this file are subject to the Mozilla Public License Version
|
|
- 1.1 (the "License"); you may not use this file except in compliance with
|
|
- the License. You may obtain a copy of the License at
|
|
- http://www.mozilla.org/MPL/
|
|
-
|
|
- Software distributed under the License is distributed on an "AS IS" basis,
|
|
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
- for the specific language governing rights and limitations under the
|
|
- License.
|
|
-
|
|
- The Original Code is mozilla.org code.
|
|
-
|
|
- The Initial Developer of the Original Code is
|
|
- Netscape Communications Corporation.
|
|
- Portions created by the Initial Developer are Copyright (C) 1998
|
|
- the Initial Developer. All Rights Reserved.
|
|
-
|
|
- Contributor(s):
|
|
- Adam Lock <adamlock@netscape.com>
|
|
- William R. Price <wrprice@alumni.rice.edu>
|
|
- Henrik Skupin <mozilla@hskupin.info>
|
|
- Jeff Walden <jwalden+code@mit.edu>
|
|
-
|
|
- Alternatively, the contents of this file may be used under the terms of
|
|
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
|
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
|
- in which case the provisions of the GPL or the LGPL are applicable instead
|
|
- of those above. If you wish to allow use of your version of this file only
|
|
- under the terms of either the GPL or the LGPL, and not to allow others to
|
|
- use your version of this file under the terms of the MPL, indicate your
|
|
- decision by deleting the provisions above and replace them with the notice
|
|
- and other provisions required by the LGPL or the GPL. If you do not delete
|
|
- the provisions above, a recipient may use your version of this file under
|
|
- the terms of any one of the MPL, the GPL or the LGPL.
|
|
-
|
|
- ***** END LICENSE BLOCK ***** -->
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<title>&loadError.label;</title>
|
|
|
|
<link rel="stylesheet" href="chrome://global/skin/netError.css" type="text/css" media="all" />
|
|
<!-- XXX this needs to be themeable -->
|
|
<link rel="icon" type="image/png" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAANbY1E9YMgAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAICSURBVHjaYvz//z8DJQAggJhwiDPvnmlzc2aR0O+JGezt+AwACCCsBhxfYhn59N41FWtXIxZOLu70niRGXVwGAAQQNgNYHj96O8HaWYdJW5ubwd4/mI2Ng7sblwEAAYRhwMm1URk/vn4SUNWVYGD8+YZBXZOZm5OLzRjoCmNsBgAEEKoBN82Y7l851GLrqMjM8Oc7A8O/3wwMP54wuAQFCXNycUzGZgBAAKEYcOaKZO2/f//5FbUVgBrfMoRVcgHpNwyKGjKMXDwCan0prFboBgAEELIBzDcvXyy2cVZhYPj9GWj7H4jo/38MDJ9OMDj7O/KzsjH3oxsAEEBwA/bNNipiZf7FI6cqwcDw8x2qqp8fGORUpVn4BEXlgGHhhCwFEEAwA9gfP3hdZ+Oizcjw+wvCdjgAuuLrFQbXIH9hTm7uqcgyAAEENuD4ctcebm5mbikFYRTbV7V/Q6j88Z5BSuY7q4CQgAjQFR4wYYAAAhtw89L5ZFsnRaDtn4CW/YXrAQcisit+PGVwDgrnZ2NnnwATBQggpsNLvGYLCAmxi8tLARWg+h3FBVBXSEj/ZZWQkRcCuiIQJAQQQCyvnj5KMDTkZ2JgYmRg4FchnHv+vmEwttLmeXT3VjKQtx4ggFgk5TXebV63UfT3ijOMxOZAVlZWdiB1EMQGCCBGSrMzQIABAFR3kRM3KggZAAAAAElFTkSuQmCC" />
|
|
|
|
<link rel="stylesheet" href="chrome://resurrect/skin/netError.css" type="text/css" media="all" />
|
|
|
|
<script type="application/x-javascript"><![CDATA[
|
|
// Error url MUST be formatted like this:
|
|
// moz-neterror:page?e=error&u=url&d=desc
|
|
|
|
// Note that this file uses document.documentURI to get
|
|
// the URL (with the format from above). This is because
|
|
// document.location.href gets the current URI off the docshell,
|
|
// which is the URL displayed in the location bar, i.e.
|
|
// the URI that the user attempted to load.
|
|
|
|
function getErrorCode()
|
|
{
|
|
var url = document.documentURI;
|
|
var error = url.search(/e\=/);
|
|
var duffUrl = url.search(/\&u\=/);
|
|
return decodeURIComponent(url.slice(error + 2, duffUrl));
|
|
}
|
|
|
|
function getDescription()
|
|
{
|
|
var url = document.documentURI;
|
|
var desc = url.search(/d\=/);
|
|
|
|
// desc == -1 if not found; if so, return an empty string
|
|
// instead of what would turn out to be portions of the URI
|
|
if (desc == -1) return "";
|
|
|
|
return decodeURIComponent(url.slice(desc + 2));
|
|
}
|
|
|
|
function retryThis()
|
|
{
|
|
// Session history has the URL of the page that failed
|
|
// to load, not the one of the error page. So, just call
|
|
// reload(), which will also repost POST data correctly.
|
|
location.reload();
|
|
}
|
|
|
|
function initPage()
|
|
{
|
|
var err = getErrorCode();
|
|
|
|
// if it's an unknown error or there's no title or description
|
|
// defined, get the generic message
|
|
var errTitle = document.getElementById("et_" + err);
|
|
var errDesc = document.getElementById("ed_" + err);
|
|
if (!errTitle || !errDesc)
|
|
{
|
|
errTitle = document.getElementById("et_generic");
|
|
errDesc = document.getElementById("ed_generic");
|
|
}
|
|
|
|
var title = document.getElementById("errorTitleText");
|
|
if (title)
|
|
{
|
|
title.parentNode.replaceChild(errTitle, title);
|
|
// change id to the replaced child's id so styling works
|
|
errTitle.id = "errorTitleText";
|
|
}
|
|
|
|
var sd = document.getElementById("errorShortDescText");
|
|
if (sd)
|
|
sd.textContent = getDescription();
|
|
|
|
var ld = document.getElementById("errorLongDesc");
|
|
if (ld)
|
|
{
|
|
ld.parentNode.replaceChild(errDesc, ld);
|
|
// change id to the replaced child's id so styling works
|
|
errDesc.id = "errorLongDesc";
|
|
}
|
|
|
|
// remove undisplayed errors to avoid bug 39098
|
|
var errContainer = document.getElementById("errorContainer");
|
|
errContainer.parentNode.removeChild(errContainer);
|
|
}
|
|
]]></script>
|
|
</head>
|
|
|
|
<body dir="&locale.dir;">
|
|
|
|
<!-- ERROR ITEM CONTAINER (removed during loading to avoid bug 39098) -->
|
|
|
|
<div id="errorContainer">
|
|
<div id="errorTitlesContainer">
|
|
<h1 id="et_generic">&generic.title;</h1>
|
|
<h1 id="et_dnsNotFound">&dnsNotFound.title;</h1>
|
|
<h1 id="et_fileNotFound">&fileNotFound.title;</h1>
|
|
<h1 id="et_malformedURI">&malformedURI.title;</h1>
|
|
<h1 id="et_protocolNotFound">&protocolNotFound.title;</h1>
|
|
<h1 id="et_connectionFailure">&connectionFailure.title;</h1>
|
|
<h1 id="et_netTimeout">&netTimeout.title;</h1>
|
|
<h1 id="et_redirectLoop">&redirectLoop.title;</h1>
|
|
<h1 id="et_unknownSocketType">&unknownSocketType.title;</h1>
|
|
<h1 id="et_netReset">&netReset.title;</h1>
|
|
<h1 id="et_netOffline">&netOffline.title;</h1>
|
|
<h1 id="et_netInterrupt">&netInterrupt.title;</h1>
|
|
<h1 id="et_deniedPortAccess">&deniedPortAccess.title;</h1>
|
|
<h1 id="et_proxyResolveFailure">&proxyResolveFailure.title;</h1>
|
|
<h1 id="et_proxyConnectFailure">&proxyConnectFailure.title;</h1>
|
|
</div>
|
|
|
|
<div id="errorDescriptionsContainer">
|
|
<div id="ed_generic">&generic.longDesc;</div>
|
|
<div id="ed_dnsNotFound">&dnsNotFound.longDesc;</div>
|
|
<div id="ed_fileNotFound">&fileNotFound.longDesc;</div>
|
|
<div id="ed_malformedURI">&malformedURI.longDesc;</div>
|
|
<div id="ed_protocolNotFound">&protocolNotFound.longDesc;</div>
|
|
<div id="ed_connectionFailure">&connectionFailure.longDesc;</div>
|
|
<div id="ed_netTimeout">&netTimeout.longDesc;</div>
|
|
<div id="ed_redirectLoop">&redirectLoop.longDesc;</div>
|
|
<div id="ed_unknownSocketType">&unknownSocketType.longDesc;</div>
|
|
<div id="ed_netReset">&netReset.longDesc;</div>
|
|
<div id="ed_netOffline">&netOffline.longDesc;</div>
|
|
<div id="ed_netInterrupt">&netInterrupt.longDesc;</div>
|
|
<div id="ed_deniedPortAccess">&deniedPortAccess.longDesc;</div>
|
|
<div id="ed_proxyResolveFailure">&proxyResolveFailure.longDesc;</div>
|
|
<div id="ed_proxyConnectFailure">&proxyConnectFailure.longDesc;</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- PAGE CONTAINER (for styling purposes only) -->
|
|
<div id="errorPageContainer">
|
|
<!-- Error Title -->
|
|
<div id="errorTitle">
|
|
<h1 id="errorTitleText" />
|
|
</div>
|
|
|
|
<!-- LONG CONTENT (the section most likely to require scrolling) -->
|
|
<div id="errorLongContent">
|
|
<!-- Short Description -->
|
|
<div id="errorShortDesc">
|
|
<p id="errorShortDescText" />
|
|
</div>
|
|
|
|
<!-- Long Description (Note: See netError.dtd for used XHTML tags) -->
|
|
<div id="errorLongDesc" />
|
|
</div>
|
|
|
|
<!-- Retry Button -->
|
|
<xul:button xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
|
id="errorTryAgain" label="&retry.label;" oncommand="retryThis();"
|
|
/>
|
|
|
|
<div id='resurrect'>
|
|
<!-- fake elements that have IDs matching target selector -->
|
|
<div id='targetTab' style='display: none;'></div>
|
|
<div id='targetWin' style='display: none;'></div>
|
|
|
|
<p>&resurrect.thispage;</p>
|
|
<select id='mirror' size='5'>
|
|
<option value='coralcdn'>&resurrect.coralcdn;</option>
|
|
<option value='google'>&resurrect.google;</option>
|
|
<option value='googletext'>&resurrect.google;&resurrect.textonly;</option>
|
|
<option value='yahoo'>&resurrect.yahoo;</option>
|
|
<option value='archive'>&resurrect.archive;</option>
|
|
<option value='msn'>&resurrect.msn;</option>
|
|
</select>
|
|
<br />
|
|
|
|
<xul:button xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
|
id="mirrorSelect" label="&okButton.label;"
|
|
/>
|
|
</div>
|
|
</div>
|
|
|
|
<!--
|
|
- Note: It is important to run the script this way, instead of using
|
|
- an onload handler. This is because error pages are loaded as
|
|
- LOAD_BACKGROUND, which means that onload handlers will not be executed.
|
|
-->
|
|
<script type="application/x-javascript">initPage();</script>
|
|
|
|
</body>
|
|
</html>
|
|
|