diff options
29 files changed, 1074 insertions, 562 deletions
diff --git a/htdocs/detailed.html b/htdocs/detailed.html index 89774f7..661071f 100755 --- a/htdocs/detailed.html +++ b/htdocs/detailed.html @@ -1,15 +1,15 @@ -<!--#set var="revision" value="\$Id: detailed.html,v 1.24 2007-04-24 01:35:15 ot Exp $" ---><!--#set var="date" value="\$Date: 2007-04-24 01:35:15 $" +<!--#set var="revision" value="\$Id: detailed.html,v 1.25 2007-05-31 02:32:14 ot Exp $" +--><!--#set var="date" value="\$Date: 2007-05-31 02:32:14 $" --><!--#set var="title" value="The W3C Markup Validation Service" --><!--#set var="relroot" value="./" --><!--#include virtual="header.html" --> -<p id="tagline"> -Check the markup (HTML, XHTML) of Web documents -</p> - <div id="frontforms"> -<ul class="tabset_tabs"><li><a href="#validate-by-uri" class="active">by URI</a></li><li><a href="#validate-by-upload">by File Upload</a></li><li><a href="#validate-by-input">by direct Input</a></li></ul> + <ul id="tabset_tabs"> + <li><a href="#validate-by-uri"><span>Validate by</span> URI</a></li> + <li><a href="#validate-by-upload"><span>Validate by</span> File Upload</a></li> + <li><a href="#validate-by-input"><span>Validate by</span> Direct Input</a></li> + </ul> <div id="fields"> <fieldset id="validate-by-uri" class="tabset_content front"><legend class="tabset_label">Validate by URI</legend> @@ -22,12 +22,21 @@ Check the markup (HTML, XHTML) of Web documents <input type="text" name="uri" id="uri" size="45" /> </p> <fieldset id="extra_opt_uri" class="moreoptions"> - <legend><a href="./#validate-by-uri" title="hide the options - see the simple interface"><img alt="*" src="./images/arrow-down.gif" /> Options</a> - ( <a title="Explanation for these options" href="docs/users.html#Options">Need Help?</a> ) </legend> + <legend class="toggletext">More Options</legend> + <div class="options"> + <!--#set var="fieldset_id" value="uri"--> <!--#include virtual="detailed-form.html" --> + </div> </fieldset> - <p class="submit_button"><label title="Submit file for validation"><input type="submit" value="Check" /></label></p> + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> + </form> </fieldset> @@ -37,11 +46,19 @@ Check the markup (HTML, XHTML) of Web documents <p><label title="Choose a Local File to Upload and Validate" for="uploaded_file">File:</label> <input type="file" id="uploaded_file" name="uploaded_file" size="30" /></p> <fieldset id="extra_opt_upload" class="moreoptions"> - <legend><a href="./#validate-by-upload" title="hide the options - see the simple interface"><img alt="*" src="./images/arrow-down.gif" /> Options</a> - ( <a title="Explanation for these options" href="docs/users.html#Options">Need Help?</a> ) </legend> + <legend class="toggletext">More Options</legend> + <div class="options"> <!--#set var="fieldset_id" value="upload"--> - <!--#include virtual="detailed-form.html" --> + <!--#include virtual="detailed-form.html" --> + </div> </fieldset><!-- invisible --> - <p class="submit_button"><label title="Submit file for validation"><input type="submit" value="Check" /></label></p> + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> + </form> <p><strong>Note</strong>: file upload may not work with Internet Explorer on some versions of Windows XP Service Pack 2, see our @@ -61,17 +78,23 @@ Check the markup (HTML, XHTML) of Web documents </select> --> </p> <fieldset id="extra_opt_direct" class="moreoptions"> - <legend><a href="./#validate-by-input" title="hide the options - see the simple interface"><img alt="*" src="./images/arrow-down.gif" /> Options</a> - ( <a title="Explanation for these options" href="docs/users.html#Options">Need Help?</a> ) </legend> + <legend class="toggletext">More Options</legend> + <div class="options"> + <table> <!--#set var="fieldset_id" value="direct"--> <!--#include virtual="detailed-form_directinput.html" --> </table> - </fieldset> - <p> </p> + </div> + </fieldset> + + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> - <p class="submit_button"> - <input type="submit" value="Validate this document" /> - </p> </form> </fieldset> diff --git a/htdocs/dev/tests/index.html b/htdocs/dev/tests/index.html index 348b340..334369e 100755 --- a/htdocs/dev/tests/index.html +++ b/htdocs/dev/tests/index.html @@ -1,9 +1,9 @@ -<!--#set var="revision" value="\$Id: index.html,v 1.77 2007-05-07 18:30:50 ot Exp $" ---><!--#set var="date" value="\$Date: 2007-05-07 18:30:50 $" +<!--#set var="revision" value="\$Id: index.html,v 1.78 2007-05-31 02:32:14 ot Exp $" +--><!--#set var="date" value="\$Date: 2007-05-31 02:32:14 $" --><!--#set var="title" value="The W3C Markup Validation Service: Tests" --><!--#set var="relroot" value="../../" --><!--#include virtual="../../header.html" --> - +<div class="doc"> <h2>Markup Validator's test collection</h2> <h3 id="TableOfContents">Table of contents</h3> @@ -565,5 +565,7 @@ All these documents should validate, without "pretty print" for the document typ <h2>Other Test Suites</h2> <ul><li><a href="http://www.nist.gov/xml/">NIST's XML, DOM test suites</a></li></ul> </div> +<div class="doc"> + <!--#include virtual="../../footer.html" --> diff --git a/htdocs/docs/errors.html b/htdocs/docs/errors.html index ea65e8e..005c8d8 100755 --- a/htdocs/docs/errors.html +++ b/htdocs/docs/errors.html @@ -1,9 +1,9 @@ -<!--#set var="revision" value="\$Id: errors.html,v 1.39 2007-05-07 14:43:29 ot Exp $" ---><!--#set var="date" value="\$Date: 2007-05-07 14:43:29 $" +<!--#set var="revision" value="\$Id: errors.html,v 1.40 2007-05-31 02:32:14 ot Exp $" +--><!--#set var="date" value="\$Date: 2007-05-31 02:32:14 $" --><!--#set var="title" value="Error Explanations for The W3C Markup Validation Service" --><!--#set var="relroot" value="../" --><!--#include virtual="../header.html" --> - +<div class="doc"> <h2 id="skip">Explanation of the error messages<br /> for the W3C Markup Validator</h2> <h3 id="TableOfContents">Table of Contents</h3> @@ -214,8 +214,8 @@ <p> Another possibility is that you used an element which requires a child element that you did not include. Hence the parent element - is "not finished", not complete. For instance, <head> generally - requires a <title>, lists (ul, ol, dl) require list items (li, + is "not finished", not complete. For instance, in HTML the <head> element + must contain a <title> child element, lists (ul, ol, dl) require list items (li, or dt, dd), and so on. </p> </div> @@ -3235,6 +3235,7 @@ </ul> </div> +</div><!-- doc --> <!--#include virtual="../footer.html" --> </body> </html> diff --git a/htdocs/footer.html b/htdocs/footer.html index 41850b4..0f235b7 100755 --- a/htdocs/footer.html +++ b/htdocs/footer.html @@ -1,12 +1,13 @@ <ul class="navbar" id="menu"> - <a href="<!--#echo var="relroot" -->" accesskey="1" title="Go to the Home Page for The W3C Markup Validation Service"><strong>Home</strong></a></li> - <li><a href="<!--#echo var="relroot" -->about.html" title="Information About this Service">About...</a></li> - <li><a href="<!--#echo var="relroot" -->whatsnew.html" title="The changes made to this service recently">News</a></li> - <li><a href="<!--#echo var="relroot" -->docs/" accesskey="3" title="Documentation for this Service">Docs</a></li> - <li><a href="<!--#echo var="relroot" -->docs/help.html" title="Help and answers to frequently asked questions">Help & <acronym title="Frequently Asked Questions">FAQ</acronym></a></li> + <li><a href="<!--#echo var="relroot" -->" accesskey="1" title="Go to the Home Page for The W3C Markup Validation Service">Home</a><span> | </span></li> + <li><a href="<!--#echo var="relroot" -->about.html" title="Information About this Service">About...</a><span> | </span></li> + <li><a href="<!--#echo var="relroot" -->whatsnew.html" title="The changes made to this service recently">News</a><span> | </span></li> + <li><a href="<!--#echo var="relroot" -->docs/" accesskey="3" title="Documentation for this Service">Docs</a><span> | </span></li> + <li><a href="<!--#echo var="relroot" -->docs/help.html" title="Help and answers to frequently asked questions">Help & <acronym title="Frequently Asked Questions">FAQ</acronym></a><span> | </span></li> <li><a href="<!--#echo var="relroot" -->feedback.html" accesskey="4" title="How to provide feedback on this service">Feedback</a></li> </ul> +<div id="footer"> <p id="activity_logos"> <a href="http://www.w3.org/QA/" title="W3C's Quality Assurance Activity, bringing you free Web quality tools and more"> @@ -45,3 +46,4 @@ <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Members">Member</a> privacy statements. </p> +</div>
\ No newline at end of file diff --git a/htdocs/header.html b/htdocs/header.html index c152447..d24934c 100755 --- a/htdocs/header.html +++ b/htdocs/header.html @@ -6,13 +6,12 @@ <title><!--#echo var="title" --></title> <link rev="made" href="mailto:www-validator@w3.org" /> <link rev="start" href="<!--#echo var="relroot" -->" title="Home Page" /> - <style type="text/css" media="all">@import "<!--#echo var="relroot" -->style/base.css"; -</style> - <script type="text/javascript" src="<!--#echo var="relroot" -->scripts/tabtastic/addclasskillclass.js"></script> - <script type="text/javascript" src="<!--#echo var="relroot" -->scripts/tabtastic/attachevent.js"></script> - <script type="text/javascript" src="<!--#echo var="relroot" -->scripts/tabtastic/addcss.js"></script> - <script type="text/javascript" src="<!--#echo var="relroot" -->scripts/tabtastic/tabtastic.js"></script> - <meta name="revision" content="$Id: header.html,v 1.48 2007-04-19 19:41:42 ville Exp $" /> + <style type="text/css" media="all"> + @import "<!--#echo var="relroot" -->style/base.css"; + </style> + <script type="text/javascript" src="scripts/mootools.js"></script> + <script type="text/javascript" src="scripts/w3c-validator.js"></script> + <meta name="revision" content="$Id: header.html,v 1.49 2007-05-31 02:32:14 ot Exp $" /> <meta name="keywords" content="HTML, HyperText Markup Language, Validation, W3C Markup Validation Service" /> <meta name="description" content="W3C's easy-to-use @@ -21,14 +20,17 @@ <!--#if expr="$feeds = 1" --> <link rel="alternate" type="application/atom+xml" href="<!--#echo var="relroot" -->whatsnew.atom" /> <!--#endif --> - <!-- SSI Template Version: $Id: header.html,v 1.48 2007-04-19 19:41:42 ville Exp $ --> + <!-- SSI Template Version: $Id: header.html,v 1.49 2007-05-31 02:32:14 ot Exp $ --> </head> <body> <div id="banner"> - <h1 id="title"><a href="http://www.w3.org/"><img height="48" alt="W3C" id="logo" src="http://www.w3.org/Icons/WWW/w3c_home_nb" /></a> - <a href="<!--#echo var="relroot" -->"><img src="<!--#echo var="relroot" -->images/markup_validation_service.png" alt="Markup Validation Service" /></a></h1> + <h1 id="title"> + <a href="http://www.w3.org/"><img alt="W3C" width="110" height="61" id="logo" src="<!--#echo var="relroot" -->images/w3c.png" /></a> + <a href="<!--#echo var="relroot" -->"><span>Markup Validation Service</span></a> + </h1> + <p id="tagline">Check the markup (HTML, XHTML) of Web documents</p> </div> diff --git a/htdocs/images/arrow-closed.png b/htdocs/images/arrow-closed.png Binary files differnew file mode 100644 index 0000000..8b76f9d --- /dev/null +++ b/htdocs/images/arrow-closed.png diff --git a/htdocs/images/arrow-open.png b/htdocs/images/arrow-open.png Binary files differnew file mode 100644 index 0000000..d9474ca --- /dev/null +++ b/htdocs/images/arrow-open.png diff --git a/htdocs/images/button-left.png b/htdocs/images/button-left.png Binary files differnew file mode 100644 index 0000000..98f16b9 --- /dev/null +++ b/htdocs/images/button-left.png diff --git a/htdocs/images/button-right.png b/htdocs/images/button-right.png Binary files differnew file mode 100644 index 0000000..2330622 --- /dev/null +++ b/htdocs/images/button-right.png diff --git a/htdocs/images/double.png b/htdocs/images/double.png Binary files differnew file mode 100644 index 0000000..cc7be7a --- /dev/null +++ b/htdocs/images/double.png diff --git a/htdocs/images/head-bl.png b/htdocs/images/head-bl.png Binary files differnew file mode 100644 index 0000000..be8e751 --- /dev/null +++ b/htdocs/images/head-bl.png diff --git a/htdocs/images/head-br.png b/htdocs/images/head-br.png Binary files differnew file mode 100644 index 0000000..147595e --- /dev/null +++ b/htdocs/images/head-br.png diff --git a/htdocs/images/head-tl.png b/htdocs/images/head-tl.png Binary files differnew file mode 100644 index 0000000..9f5e60d --- /dev/null +++ b/htdocs/images/head-tl.png diff --git a/htdocs/images/head-tr.png b/htdocs/images/head-tr.png Binary files differnew file mode 100644 index 0000000..ed62aa6 --- /dev/null +++ b/htdocs/images/head-tr.png diff --git a/htdocs/images/round-br.png b/htdocs/images/round-br.png Binary files differnew file mode 100644 index 0000000..feefb2f --- /dev/null +++ b/htdocs/images/round-br.png diff --git a/htdocs/images/round-tl.png b/htdocs/images/round-tl.png Binary files differnew file mode 100644 index 0000000..4b6d3a8 --- /dev/null +++ b/htdocs/images/round-tl.png diff --git a/htdocs/images/round-tr.png b/htdocs/images/round-tr.png Binary files differnew file mode 100644 index 0000000..4dd35b7 --- /dev/null +++ b/htdocs/images/round-tr.png diff --git a/htdocs/images/tab-tl.png b/htdocs/images/tab-tl.png Binary files differnew file mode 100644 index 0000000..75c66b7 --- /dev/null +++ b/htdocs/images/tab-tl.png diff --git a/htdocs/images/tab-tr.png b/htdocs/images/tab-tr.png Binary files differnew file mode 100644 index 0000000..2384eb5 --- /dev/null +++ b/htdocs/images/tab-tr.png diff --git a/htdocs/images/textbg.png b/htdocs/images/textbg.png Binary files differnew file mode 100644 index 0000000..0c32dd0 --- /dev/null +++ b/htdocs/images/textbg.png diff --git a/htdocs/images/w3c.png b/htdocs/images/w3c.png Binary files differnew file mode 100644 index 0000000..f4e2904 --- /dev/null +++ b/htdocs/images/w3c.png diff --git a/htdocs/index.html b/htdocs/index.html index 595490b..e9d6adc 100755 --- a/htdocs/index.html +++ b/htdocs/index.html @@ -1,15 +1,15 @@ -<!--#set var="revision" value="\$Id: index.html,v 1.89 2007-04-24 01:35:15 ot Exp $" ---><!--#set var="date" value="\$Date: 2007-04-24 01:35:15 $" +<!--#set var="revision" value="\$Id: index.html,v 1.90 2007-05-31 02:32:14 ot Exp $" +--><!--#set var="date" value="\$Date: 2007-05-31 02:32:14 $" --><!--#set var="title" value="The W3C Markup Validation Service" --><!--#set var="relroot" value="./" --><!--#include virtual="header.html" --> -<p id="tagline"> -Check the markup (HTML, XHTML) of Web documents -</p> - <div id="frontforms"> -<ul class="tabset_tabs"><li><a href="#validate-by-uri" class="active">by URI</a></li><li><a href="#validate-by-upload">by File Upload</a></li><li><a href="#validate-by-input">by direct Input</a></li></ul> + <ul id="tabset_tabs"> + <li><a href="#validate-by-uri"><span>Validate by</span> URI</a></li> + <li><a href="#validate-by-upload"><span>Validate by</span> File Upload</a></li> + <li><a href="#validate-by-input"><span>Validate by</span> Direct Input</a></li> + </ul> <div id="fields"> <fieldset id="validate-by-uri" class="tabset_content front"><legend class="tabset_label">Validate by URI</legend> @@ -21,8 +21,22 @@ Check the markup (HTML, XHTML) of Web documents <label title="Address of page to Validate" for="uri">Address:</label> <input type="text" name="uri" id="uri" size="45" /> </p> - <p><a href="detailed.html#validate-by-uri" title="choose options from the detailed interface"><img alt="*" src="./images/arrow-right.gif"/> Options</a></p> - <p class="submit_button"><label title="Submit file for validation"><input type="submit" value="Check" /></label></p> + <fieldset id="extra_opt_uri" class="moreoptions"> + <legend class="toggletext">More Options</legend> + <div class="options"> + + <!--#set var="fieldset_id" value="uri"--> + <!--#include virtual="detailed-form.html" --> + </div> + </fieldset> + + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> + </form> </fieldset> @@ -31,8 +45,20 @@ Check the markup (HTML, XHTML) of Web documents <p class="instructions">Upload a document for validation:</p> <p><label title="Choose a Local File to Upload and Validate" for="uploaded_file">File:</label> <input type="file" id="uploaded_file" name="uploaded_file" size="30" /></p> - <p><a href="detailed.html#validate-by-upload" title="choose options from the detailed interface"><img alt="*" src="./images/arrow-right.gif"/> Options</a></p> - <p class="submit_button"><label title="Submit file for validation"><input type="submit" value="Check" /></label></p> + <fieldset id="extra_opt_upload" class="moreoptions"> + <legend class="toggletext">More Options</legend> + <div class="options"> + <!--#set var="fieldset_id" value="upload"--> + <!--#include virtual="detailed-form.html" --> + </div> + </fieldset><!-- invisible --> + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> + </form> <p><strong>Note</strong>: file upload may not work with Internet Explorer on some versions of Windows XP Service Pack 2, see our @@ -40,31 +66,41 @@ Check the markup (HTML, XHTML) of Web documents on the W3C QA Website.</p> </fieldset> - - <fieldset id="validate-by-input" class="tabset_content front"><legend class="tabset_label">Validate by direct input</legend> <form method="post" enctype="multipart/form-data" action="check"> <p class="instructions"><label title="Paste a complete (HTML) Document here" for="fragment">Enter the Markup (Full Document) to validate</label>:<br /> <textarea id="fragment" name="fragment" rows="12" cols="80"></textarea> - <!-- <br /><label for="parsemodel">Treat as:</label> + <!-- <br /><label for="parsemodel">Treat as:</label> <select id="parsemodel" name="parsemodel"> <option value="sgml">HTML</option> <option value="xml">XML (and XHTML)</option> </select> --> </p> - <p><a href="detailed.html#validate-by-input" title="choose options from the detailed interface"><img alt="*" src="./images/arrow-right.gif"/> Options</a></p> + <fieldset id="extra_opt_direct" class="moreoptions"> + <legend class="toggletext">More Options</legend> + <div class="options"> + + <table> + <!--#set var="fieldset_id" value="direct"--> + <!--#include virtual="detailed-form_directinput.html" --> + </table> + </div> + </fieldset> + + + <p class="submit_button"> + <label title="Submit for validation"> + <input type="submit" value="Check" /> + </label> + </p> - <p class="submit_button"> - <input type="submit" value="Validate this document" /> - </p> </form> </fieldset> </div><!-- fields --> </div> <!-- frontforms --> - <!--#include virtual="intro.html" --> - +<!--#include virtual="intro.html" --> <!--#include virtual="footer.html" --> </body> </html> diff --git a/htdocs/scripts/mootools.js b/htdocs/scripts/mootools.js new file mode 100644 index 0000000..2db33b8 --- /dev/null +++ b/htdocs/scripts/mootools.js @@ -0,0 +1,173 @@ +//MooTools, My Object Oriented Javascript Tools. Copyright (c) 2006 Valerio Proietti, <http://mad4milk.net>, MIT Style License. + +var MooTools={version:"1.2dev"};function $defined(_1){return(_1!=undefined);} +function $type(_2){if(!$defined(_2)){return false;} +if(_2.htmlElement){return"element";} +var _3=typeof _2;if(_3=="object"&&_2.nodeName){switch(_2.nodeType){case 1:return"element";case 3:return(/\S/).test(_2.nodeValue)?"textnode":"whitespace";}} +if(_3=="object"||_3=="function"){switch(_2.constructor){case Array:return"array";case RegExp:return"regexp";case Class:return"class";} +if(typeof _2.length=="number"){if(_2.item){return"collection";} +if(_2.callee){return"arguments";}}} +return _3;} +function $merge(){var _4={};for(var i=0;i<arguments.length;i++){for(var _6 in arguments[i]){var ap=arguments[i][_6];var mp=_4[_6];if(mp&&$type(ap)=="object"&&$type(mp)=="object"){_4[_6]=$merge(mp,ap);}else{_4[_6]=ap;}}} +return _4;} +var $extend=function(){var _9=arguments;if(!_9[1]){_9=[this,_9[0]];} +for(var _a in _9[1]){_9[0][_a]=_9[1][_a];} +return _9[0];};var $native=function(){for(var i=0,l=arguments.length;i<l;i++){arguments[i].extend=function(_d){for(var _e in _d){if(!this.prototype[_e]){this.prototype[_e]=_d[_e];} +if(!this[_e]){this[_e]=$native.generic(_e);}}};}};$native.generic=function(_f){return function(_10){return this.prototype[_f].apply(_10,Array.prototype.slice.call(arguments,1));};};$native(Function,Array,String,Number);var Abstract=function(obj){obj=obj||{};obj.extend=$extend;return obj;};var Window=new Abstract(window);var Document=new Abstract(document);document.head=document.getElementsByTagName("head")[0];function $chk(obj){return!!(obj||obj===0);} +function $pick(obj,_14){return $defined(obj)?obj:_14;} +function $random(min,max){return Math.floor(Math.random()*(max-min+1)+min);} +function $time(){return new Date().getTime();} +function $clear(_17){clearTimeout(_17);clearInterval(_17);return null;} +window.xpath=!!(document.evaluate);if(window.ActiveXObject){window.ie=window[window.XMLHttpRequest?"ie7":"ie6"]=true;}else{if(document.childNodes&&!document.all&&!navigator.taintEnabled){window.webkit=window[window.xpath?"webkit420":"webkit419"]=true;}else{if(document.getBoxObjectFor!=null){window.gecko=true;}}} +if(typeof HTMLElement=="undefined"){var HTMLElement=function(){};if(window.webkit){document.createElement("iframe");} +HTMLElement.prototype=(window.webkit)?window["[[DOMElement.prototype]]"]:{};} +HTMLElement.prototype.htmlElement=function(){};if(window.ie6){try{document.execCommand("BackgroundImageCache",false,true);} +catch(e){}} +var Class=function(_18){var _19=function(){return(arguments[0]!==null&&this.initialize&&$type(this.initialize)=="function")?this.initialize.apply(this,arguments):this;};$extend(_19,this);_19.prototype=_18;_19.constructor=Class;return _19;};Class.empty=function(){};Class.prototype={extend:function(_1a){var _1b=new this(null);for(var _1c in _1a){var pp=_1b[_1c];_1b[_1c]=Class.Merge(pp,_1a[_1c]);} +return new Class(_1b);},implement:function(){for(var i=0,l=arguments.length;i<l;i++){$extend(this.prototype,arguments[i]);}}};Class.Merge=function(_20,_21){if(_20&&_20!=_21){var _22=$type(_21);if(_22!=$type(_20)){return _21;} +switch(_22){case"function":var _23=function(){this.parent=arguments.callee.parent;return _21.apply(this,arguments);};_23.parent=_20;return _23;case"object":return $merge(_20,_21);}} +return _21;};var Chain=new Class({chain:function(fn){this.chains=this.chains||[];this.chains.push(fn);return this;},callChain:function(){if(this.chains&&this.chains.length){this.chains.shift().delay(10,this);}},clearChain:function(){this.chains=[];}});var Events=new Class({addEvent:function(_25,fn){if(fn!=Class.empty){this.$events=this.$events||{};this.$events[_25]=this.$events[_25]||[];this.$events[_25].include(fn);} +return this;},fireEvent:function(_27,_28,_29){if(this.$events&&this.$events[_27]){this.$events[_27].each(function(fn){fn.create({"bind":this,"delay":_29,"arguments":_28})();},this);} +return this;},removeEvent:function(_2b,fn){if(this.$events&&this.$events[_2b]){this.$events[_2b].remove(fn);} +return this;}});var Options=new Class({setOptions:function(){this.options=$merge.apply(null,[this.options].extend(arguments));if(this.addEvent){for(var _2d in this.options){if($type(this.options[_2d]=="function")&&(/^on[A-Z]/).test(_2d)){this.addEvent(_2d,this.options[_2d]);}}} +return this;}});Array.extend({forEach:function(fn,_2f){for(var i=0,j=this.length;i<j;i++){fn.call(_2f,this[i],i,this);}},filter:function(fn,_33){var _34=[];for(var i=0,j=this.length;i<j;i++){if(fn.call(_33,this[i],i,this)){_34.push(this[i]);}} +return _34;},map:function(fn,_38){var _39=[];for(var i=0,j=this.length;i<j;i++){_39[i]=fn.call(_38,this[i],i,this);} +return _39;},every:function(fn,_3d){for(var i=0,j=this.length;i<j;i++){if(!fn.call(_3d,this[i],i,this)){return false;}} +return true;},some:function(fn,_41){for(var i=0,j=this.length;i<j;i++){if(fn.call(_41,this[i],i,this)){return true;}} +return false;},indexOf:function(_44,_45){var len=this.length;for(var i=(_45<0)?Math.max(0,len+_45):_45||0;i<len;i++){if(this[i]===_44){return i;}} +return-1;},copy:function(_48,_49){_48=_48||0;if(_48<0){_48=this.length+_48;} +_49=_49||(this.length-_48);var _4a=[];for(var i=0;i<_49;i++){_4a[i]=this[_48++];} +return _4a;},remove:function(_4c){var i=0;var len=this.length;while(i<len){if(this[i]===_4c){this.splice(i,1);len--;}else{i++;}} +return this;},contains:function(_4f,_50){return this.indexOf(_4f,_50)!=-1;},associate:function(_51){var obj={},_53=Math.min(this.length,_51.length);for(var i=0;i<_53;i++){obj[_51[i]]=this[i];} +return obj;},extend:function(_55){for(var i=0,j=_55.length;i<j;i++){this.push(_55[i]);} +return this;},merge:function(_58){for(var i=0,l=_58.length;i<l;i++){this.include(_58[i]);} +return this;},include:function(_5b){if(!this.contains(_5b)){this.push(_5b);} +return this;},getRandom:function(){return this[$random(0,this.length-1)]||null;},getLast:function(){return this[this.length-1]||null;}});Array.prototype.each=Array.prototype.forEach;Array.each=Array.forEach;function $A(_5c){return Array.copy(_5c);} +function $each(_5d,fn,_5f){if(_5d&&typeof _5d.length=="number"&&$type(_5d)!="object"){Array.forEach(_5d,fn,_5f);}else{for(var _60 in _5d){fn.call(_5f||_5d,_5d[_60],_60);}}} +String.extend({test:function(_61,_62){return(($type(_61)=="string")?new RegExp(_61,_62):_61).test(this);},toInt:function(){return parseInt(this,10);},toFloat:function(){return parseFloat(this);},camelCase:function(){return this.replace(/-\D/g,function(_63){return _63.charAt(1).toUpperCase();});},hyphenate:function(){return this.replace(/\w[A-Z]/g,function(_64){return(_64.charAt(0)+"-"+_64.charAt(1).toLowerCase());});},capitalize:function(){return this.replace(/\b[a-z]/g,function(_65){return _65.toUpperCase();});},trim:function(){return this.replace(/^\s+|\s+$/g,"");},clean:function(){return this.replace(/\s{2,}/g," ").trim();},rgbToHex:function(_66){var rgb=this.match(/\d{1,3}/g);return(rgb)?rgb.rgbToHex(_66):false;},hexToRgb:function(_68){var hex=this.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);return(hex)?hex.slice(1).hexToRgb(_68):false;},contains:function(_6a,s){return(s)?(s+this+s).indexOf(s+_6a+s)>-1:this.indexOf(_6a)>-1;},escapeRegExp:function(){return this.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");}});Array.extend({rgbToHex:function(_6c){if(this.length<3){return false;} +if(this.length==4&&this[3]==0&&!_6c){return"transparent";} +var hex=[];for(var i=0;i<3;i++){var bit=(this[i]-0).toString(16);hex.push((bit.length==1)?"0"+bit:bit);} +return _6c?hex:"#"+hex.join("");},hexToRgb:function(_70){if(this.length!=3){return false;} +var rgb=[];for(var i=0;i<3;i++){rgb.push(parseInt((this[i].length==1)?this[i]+this[i]:this[i],16));} +return _70?rgb:"rgb("+rgb.join(",")+")";}});Function.extend({create:function(_73){var fn=this;_73=$merge({"bind":fn,"event":false,"arguments":null,"delay":false,"periodical":false,"attempt":false},_73);if($chk(_73.arguments)&&$type(_73.arguments)!="array"){_73.arguments=[_73.arguments];} +return function(_75){var _76;if(_73.event){_75=_75||window.event;_76=[(_73.event===true)?_75:new _73.event(_75)];if(_73.arguments){_76.extend(_73.arguments);}}else{_76=_73.arguments||arguments;} +var _77=function(){return fn.apply($pick(_73.bind,fn),_76);};if(_73.delay){return setTimeout(_77,_73.delay);} +if(_73.periodical){return setInterval(_77,_73.periodical);} +if(_73.attempt){try{return _77();} +catch(err){return false;}} +return _77();};},pass:function(_78,_79){return this.create({"arguments":_78,"bind":_79});},attempt:function(_7a,_7b){return this.create({"arguments":_7a,"bind":_7b,"attempt":true})();},bind:function(_7c,_7d){return this.create({"bind":_7c,"arguments":_7d});},bindAsEventListener:function(_7e,_7f){return this.create({"bind":_7e,"event":true,"arguments":_7f});},delay:function(_80,_81,_82){return this.create({"delay":_80,"bind":_81,"arguments":_82})();},periodical:function(_83,_84,_85){return this.create({"periodical":_83,"bind":_84,"arguments":_85})();}});Number.extend({toInt:function(){return parseInt(this);},toFloat:function(){return parseFloat(this);},limit:function(min,max){return Math.min(max,Math.max(min,this));},round:function(_88){_88=Math.pow(10,_88||0);return Math.round(this*_88)/_88;},times:function(fn){for(var i=0;i<this;i++){fn(i);}}});var Element=new Class({initialize:function(el,_8c){if($type(el)=="string"){if(window.ie&&_8c&&(_8c.name||_8c.type)){var _8d=(_8c.name)?" name=\""+_8c.name+"\"":"";var _8e=(_8c.type)?" type=\""+_8c.type+"\"":"";delete _8c.name;delete _8c.type;el="<"+el+_8d+_8e+">";} +el=document.createElement(el);} +el=$(el);return(!_8c||!el)?el:el.set(_8c);}});var Elements=new Class({initialize:function(_8f){return(_8f)?$extend(_8f,this):this;}});Elements.extend=function(_90){for(var _91 in _90){this.prototype[_91]=_90[_91];this[_91]=$native.generic(_91);}};function $(el){if(!el){return false;} +if(el.htmlElement){return Garbage.collect(el);} +if([window,document].contains(el)){return el;} +var _93=$type(el);if(_93=="string"){el=document.getElementById(el);_93=(el)?"element":false;} +if(_93!="element"){return false;} +if(el.htmlElement){return Garbage.collect(el);} +if(["object","embed"].contains(el.tagName.toLowerCase())){return el;} +$extend(el,Element.prototype);el.htmlElement=function(){};return Garbage.collect(el);} +document.getElementsBySelector=document.getElementsByTagName;function $$(){var _94=[];for(var i=0,j=arguments.length;i<j;i++){var _97=arguments[i];switch($type(_97)){case"element":_94.push(_97);case"boolean":break;case false:break;case"string":_97=document.getElementsBySelector(_97,true);default:_94.extend(_97);}} +return $$.unique(_94);} +$$.unique=function(_98){var _99=[];for(var i=0,l=_98.length;i<l;i++){if(_98[i].$included){continue;} +var _9c=$(_98[i]);if(_9c&&!_9c.$included){_9c.$included=true;_99.push(_9c);}} +for(var n=0,d=_99.length;n<d;n++){_99[n].$included=null;} +return new Elements(_99);};Elements.Multi=function(_9f){return function(){var _a0=arguments;var _a1=[];var _a2=true;for(var i=0,j=this.length,_a5;i<j;i++){_a5=this[i][_9f].apply(this[i],_a0);if($type(_a5)!="element"){_a2=false;} +_a1.push(_a5);} +return(_a2)?$$.unique(_a1):_a1;};};Element.extend=function(_a6){for(var _a7 in _a6){HTMLElement.prototype[_a7]=_a6[_a7];Element.prototype[_a7]=_a6[_a7];Element[_a7]=$native.generic(_a7);var _a8=(Array.prototype[_a7])?_a7+"Elements":_a7;Elements.prototype[_a8]=Elements.Multi(_a7);}};Element.extend({set:function(_a9){for(var _aa in _a9){var val=_a9[_aa];switch(_aa){case"styles":this.setStyles(val);break;case"events":if(this.addEvents){this.addEvents(val);} +break;case"properties":this.setProperties(val);break;default:this.setProperty(_aa,val);}} +return this;},inject:function(el,_ad){el=$(el);switch(_ad){case"before":el.parentNode.insertBefore(this,el);break;case"after":var _ae=el.getNext();if(!_ae){el.parentNode.appendChild(this);}else{el.parentNode.insertBefore(this,_ae);} +break;case"top":var _af=el.firstChild;if(_af){el.insertBefore(this,_af);break;} +default:el.appendChild(this);} +return this;},injectBefore:function(el){return this.inject(el,"before");},injectAfter:function(el){return this.inject(el,"after");},injectInside:function(el){return this.inject(el,"bottom");},injectTop:function(el){return this.inject(el,"top");},adopt:function(){var _b4=[];$each(arguments,function(_b5){_b4=_b4.concat(_b5);});$$(_b4).inject(this);return this;},remove:function(){return this.parentNode.removeChild(this);},clone:function(_b6){var el=$(this.cloneNode(_b6!==false));if(!el.$events){return el;} +el.$events={};for(var _b8 in this.$events){el.$events[_b8]={"keys":$A(this.$events[_b8].keys),"values":$A(this.$events[_b8].values)};} +return el.removeEvents();},replaceWith:function(el){el=$(el);this.parentNode.replaceChild(el,this);return el;},appendText:function(_ba){if(window.ie){switch(this.getTag()){case"style":this.styleSheet.cssText=_ba;return this;case"script":return this.setProperty("text",_ba);}} +this.appendChild(document.createTextNode(_ba));return this;},hasClass:function(_bb){return this.className.contains(_bb," ");},addClass:function(_bc){if(!this.hasClass(_bc)){this.className=(this.className+" "+_bc).clean();} +return this;},removeClass:function(_bd){this.className=this.className.replace(new RegExp("(^|\\s)"+_bd+"(?:\\s|$)"),"$1").clean();return this;},toggleClass:function(_be){return this.hasClass(_be)?this.removeClass(_be):this.addClass(_be);},setStyle:function(_bf,_c0){switch(_bf){case"opacity":return this.setOpacity(parseFloat(_c0));case"float":_bf=(window.ie)?"styleFloat":"cssFloat";} +_bf=_bf.camelCase();switch($type(_c0)){case"number":if(!["zIndex","zoom"].contains(_bf)){_c0+="px";} +break;case"array":_c0="rgb("+_c0.join(",")+")";} +this.style[_bf]=_c0;return this;},setStyles:function(_c1){switch($type(_c1)){case"object":Element.setMany(this,"setStyle",_c1);break;case"string":this.style.cssText=_c1;} +return this;},setOpacity:function(_c2){if(_c2==0){if(this.style.visibility!="hidden"){this.style.visibility="hidden";}}else{if(this.style.visibility!="visible"){this.style.visibility="visible";}} +if(!this.currentStyle||!this.currentStyle.hasLayout){this.style.zoom=1;} +if(window.ie){this.style.filter=(_c2==1)?"":"alpha(opacity="+_c2*100+")";} +this.style.opacity=this.$tmp.opacity=_c2;return this;},getStyle:function(_c3){_c3=_c3.camelCase();var _c4=this.style[_c3];if(!$chk(_c4)){if(_c3=="opacity"){return this.$tmp.opacity;} +_c4=[];for(var _c5 in Element.Styles){if(_c3==_c5){Element.Styles[_c5].each(function(s){var _c7=this.getStyle(s);_c4.push(parseInt(_c7)?_c7:"0px");},this);if(_c3=="border"){var _c8=_c4.every(function(bit){return(bit==_c4[0]);});return(_c8)?_c4[0]:false;} +return _c4.join(" ");}} +if(_c3.contains("border")){if(Element.Styles.border.contains(_c3)){return["Width","Style","Color"].map(function(p){return this.getStyle(_c3+p);},this).join(" ");}else{if(Element.borderShort.contains(_c3)){return["Top","Right","Bottom","Left"].map(function(p){return this.getStyle("border"+p+_c3.replace("border",""));},this).join(" ");}}} +if(document.defaultView){_c4=document.defaultView.getComputedStyle(this,null).getPropertyValue(_c3.hyphenate());}else{if(this.currentStyle){_c4=this.currentStyle[_c3];}}} +if(window.ie){_c4=Element.fixStyle(_c3,_c4,this);} +if(_c4&&_c3.test(/color/i)&&_c4.contains("rgb")){return _c4.split("rgb").splice(1,4).map(function(_cc){return _cc.rgbToHex();}).join(" ");} +return _c4;},getStyles:function(){return Element.getMany(this,"getStyle",arguments);},walk:function(_cd,_ce){_cd+="Sibling";var el=(_ce)?this[_ce]:this[_cd];while(el&&$type(el)!="element"){el=el[_cd];} +return $(el);},getPrevious:function(){return this.walk("previous");},getNext:function(){return this.walk("next");},getFirst:function(){return this.walk("next","firstChild");},getLast:function(){return this.walk("previous","lastChild");},getParent:function(){return $(this.parentNode);},getChildren:function(){return $$(this.childNodes);},hasChild:function(el){return!!$A(this.getElementsByTagName("*")).contains(el);},getProperty:function(_d1){var _d2=Element.Properties[_d1];if(_d2){return this[_d2];} +var _d3=Element.PropertiesIFlag[_d1]||0;if(!window.ie||_d3){return this.getAttribute(_d1,_d3);} +var _d4=this.attributes[_d1];return(_d4)?_d4.nodeValue:null;},removeProperty:function(_d5){var _d6=Element.Properties[_d5];if(_d6){this[_d6]="";}else{this.removeAttribute(_d5);} +return this;},getProperties:function(){return Element.getMany(this,"getProperty",arguments);},setProperty:function(_d7,_d8){var _d9=Element.Properties[_d7];if(_d9){this[_d9]=_d8;}else{this.setAttribute(_d7,_d8);} +return this;},setProperties:function(_da){return Element.setMany(this,"setProperty",_da);},setHTML:function(){this.innerHTML=$A(arguments).join("");return this;},getTag:function(){return this.tagName.toLowerCase();},empty:function(){Garbage.trash(this.getElementsByTagName("*"));return this.setHTML("");}});Element.fixStyle=function(_db,_dc,_dd){if($chk(parseInt(_dc))){return _dc;} +if(["height","width"].contains(_db)){var _de=(_db=="width")?["left","right"]:["top","bottom"];var _df=0;_de.each(function(_e0){_df+=_dd.getStyle("border-"+_e0+"-width").toInt()+_dd.getStyle("padding-"+_e0).toInt();});return _dd["offset"+_db.capitalize()]-_df+"px";}else{if(_db.test(/border(.+)Width|margin|padding/)){return"0px";}} +return _dc;};Element.Styles={"border":[],"padding":[],"margin":[]};["Top","Right","Bottom","Left"].each(function(_e1){for(var _e2 in Element.Styles){Element.Styles[_e2].push(_e2+_e1);}});Element.borderShort=["borderWidth","borderStyle","borderColor"];Element.getMany=function(el,_e4,_e5){var _e6={};$each(_e5,function(key){_e6[key]=el[_e4](key);});return _e6;};Element.setMany=function(el,_e9,_ea){for(var key in _ea){el[_e9](key,_ea[key]);} +return el;};Element.Properties=new Abstract({"class":"className","for":"htmlFor","colspan":"colSpan","rowspan":"rowSpan","accesskey":"accessKey","tabindex":"tabIndex","maxlength":"maxLength","readonly":"readOnly","frameborder":"frameBorder","value":"value","disabled":"disabled","checked":"checked","multiple":"multiple","selected":"selected"});Element.PropertiesIFlag={"href":2,"src":2};Element.Methods={Listeners:{addListener:function(_ec,fn){if(this.addEventListener){this.addEventListener(_ec,fn,false);}else{this.attachEvent("on"+_ec,fn);} +return this;},removeListener:function(_ee,fn){if(this.removeEventListener){this.removeEventListener(_ee,fn,false);}else{this.detachEvent("on"+_ee,fn);} +return this;}}};window.extend(Element.Methods.Listeners);document.extend(Element.Methods.Listeners);Element.extend(Element.Methods.Listeners);var Garbage={elements:[],collect:function(el){if(!el.$tmp){Garbage.elements.push(el);el.$tmp={"opacity":1};} +return el;},trash:function(_f1){for(var i=0,j=_f1.length,el;i<j;i++){if(!(el=_f1[i])||!el.$tmp){continue;} +if(el.$events){el.fireEvent("trash").removeEvents();} +for(var p in el.$tmp){el.$tmp[p]=null;} +for(var d in Element.prototype){el[d]=null;} +Garbage.elements[Garbage.elements.indexOf(el)]=null;el.htmlElement=el.$tmp=el=null;} +Garbage.elements.remove(null);},empty:function(){Garbage.collect(window);Garbage.collect(document);Garbage.trash(Garbage.elements);}};window.addListener("beforeunload",function(){window.addListener("unload",Garbage.empty);if(window.ie){window.addListener("unload",CollectGarbage);}});var Event=new Class({initialize:function(_f7){if(_f7&&_f7.$extended){return _f7;} +this.$extended=true;_f7=_f7||window.event;this.event=_f7;this.type=_f7.type;this.target=_f7.target||_f7.srcElement;if(this.target.nodeType==3){this.target=this.target.parentNode;} +this.shift=_f7.shiftKey;this.control=_f7.ctrlKey;this.alt=_f7.altKey;this.meta=_f7.metaKey;if(["DOMMouseScroll","mousewheel"].contains(this.type)){this.wheel=(_f7.wheelDelta)?_f7.wheelDelta/120:-(_f7.detail||0)/3;}else{if(this.type.contains("key")){this.code=_f7.which||_f7.keyCode;for(var _f8 in Event.keys){if(Event.keys[_f8]==this.code){this.key=_f8;break;}} +if(this.type=="keydown"){var _f9=this.code-111;if(_f9>0&&_f9<13){this.key="f"+_f9;}} +this.key=this.key||String.fromCharCode(this.code).toLowerCase();}else{if(this.type.test(/(click|mouse|menu)/)){this.page={"x":_f7.pageX||_f7.clientX+document.documentElement.scrollLeft,"y":_f7.pageY||_f7.clientY+document.documentElement.scrollTop};this.client={"x":_f7.pageX?_f7.pageX-window.pageXOffset:_f7.clientX,"y":_f7.pageY?_f7.pageY-window.pageYOffset:_f7.clientY};this.rightClick=(_f7.which==3)||(_f7.button==2);switch(this.type){case"mouseover":this.relatedTarget=_f7.relatedTarget||_f7.fromElement;break;case"mouseout":this.relatedTarget=_f7.relatedTarget||_f7.toElement;} +this.fixRelatedTarget();}}} +return this;},stop:function(){return this.stopPropagation().preventDefault();},stopPropagation:function(){if(this.event.stopPropagation){this.event.stopPropagation();}else{this.event.cancelBubble=true;} +return this;},preventDefault:function(){if(this.event.preventDefault){this.event.preventDefault();}else{this.event.returnValue=false;} +return this;}});Event.fix={relatedTarget:function(){if(this.relatedTarget&&this.relatedTarget.nodeType==3){this.relatedTarget=this.relatedTarget.parentNode;}},relatedTargetGecko:function(){try{Event.fix.relatedTarget.call(this);} +catch(e){this.relatedTarget=this.target;}}};Event.prototype.fixRelatedTarget=(window.gecko)?Event.fix.relatedTargetGecko:Event.fix.relatedTarget;Event.keys=new Abstract({"enter":13,"up":38,"down":40,"left":37,"right":39,"esc":27,"space":32,"backspace":8,"tab":9,"delete":46});Element.Methods.Events={addEvent:function(_fa,fn){this.$events=this.$events||{};this.$events[_fa]=this.$events[_fa]||{"keys":[],"values":[]};if(this.$events[_fa].keys.contains(fn)){return this;} +this.$events[_fa].keys.push(fn);var _fc=_fa;var _fd=Element.Events[_fa];if(_fd){if(_fd.add){_fd.add.call(this,fn);} +if(_fd.map){fn=_fd.map;} +if(_fd.type){_fc=_fd.type;}} +if(!this.addEventListener){fn=fn.create({"bind":this,"event":true});} +this.$events[_fa].values.push(fn);return(Element.NativeEvents.contains(_fc))?this.addListener(_fc,fn):this;},removeEvent:function(_fe,fn){if(!this.$events||!this.$events[_fe]){return this;} +var pos=this.$events[_fe].keys.indexOf(fn);if(pos==-1){return this;} +var key=this.$events[_fe].keys.splice(pos,1)[0];var _102=this.$events[_fe].values.splice(pos,1)[0];var _103=Element.Events[_fe];if(_103){if(_103.remove){_103.remove.call(this,fn);} +if(_103.type){_fe=_103.type;}} +return(Element.NativeEvents.contains(_fe))?this.removeListener(_fe,_102):this;},addEvents:function(_104){return Element.setMany(this,"addEvent",_104);},removeEvents:function(type){if(!this.$events){return this;} +if(!type){for(var _106 in this.$events){this.removeEvents(_106);} +this.$events=null;}else{if(this.$events[type]){this.$events[type].keys.each(function(fn){this.removeEvent(type,fn);},this);this.$events[type]=null;}} +return this;},fireEvent:function(type,args,_10a){if(this.$events&&this.$events[type]){this.$events[type].keys.each(function(fn){fn.create({"bind":this,"delay":_10a,"arguments":args})();},this);} +return this;},cloneEvents:function(from,type){if(!from.$events){return this;} +if(!type){for(var _10e in from.$events){this.cloneEvents(from,_10e);}}else{if(from.$events[type]){from.$events[type].keys.each(function(fn){this.addEvent(type,fn);},this);}} +return this;}};window.extend(Element.Methods.Events);document.extend(Element.Methods.Events);Element.extend(Element.Methods.Events);Element.Events=new Abstract({"mouseenter":{type:"mouseover",map:function(_110){_110=new Event(_110);if(_110.relatedTarget!=this&&!this.hasChild(_110.relatedTarget)){this.fireEvent("mouseenter",_110);}}},"mouseleave":{type:"mouseout",map:function(_111){_111=new Event(_111);if(_111.relatedTarget!=this&&!this.hasChild(_111.relatedTarget)){this.fireEvent("mouseleave",_111);}}},"mousewheel":{type:(window.gecko)?"DOMMouseScroll":"mousewheel"}});Element.NativeEvents=["click","dblclick","mouseup","mousedown","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","keydown","keypress","keyup","load","unload","beforeunload","resize","move","focus","blur","change","submit","reset","select","error","abort","contextmenu"];Function.extend({bindWithEvent:function(bind,args){return this.create({"bind":bind,"arguments":args,"event":Event});}});Elements.extend({filterByTag:function(tag){return new Elements(this.filter(function(el){return(Element.getTag(el)==tag);}));},filterByClass:function(_116,_117){var _118=this.filter(function(el){return(el.className&&el.className.contains(_116," "));});return(_117)?_118:new Elements(_118);},filterById:function(id,_11b){var _11c=this.filter(function(el){return(el.id==id);});return(_11b)?_11c:new Elements(_11c);},filterByAttribute:function(name,_11f,_120,_121){var _122=this.filter(function(el){var _124=Element.getProperty(el,name);if(!_124){return false;} +if(!_11f){return true;} +switch(_11f){case"=":return(_124==_120);case"*=":return(_124.contains(_120));case"^=":return(_124.substr(0,_120.length)==_120);case"$=":return(_124.substr(_124.length-_120.length)==_120);case"!=":return(_124!=_120);case"~=":return _124.contains(_120," ");} +return false;});return(_121)?_122:new Elements(_122);}});function $E(_125,_126){return($(_126)||document).getElement(_125);} +function $ES(_127,_128){return($(_128)||document).getElementsBySelector(_127);} +$$.shared={"regexp":/^(\w*|\*)(?:#([\w-]+)|\.([\w-]+))?(?:\[(\w+)(?:([!*^$]?=)["']?([^"'\]]*)["']?)?])?$/,"xpath":{getParam:function(_129,_12a,_12b,i){var temp=[_12a.namespaceURI?"xhtml:":"",_12b[1]];if(_12b[2]){temp.push("[@id=\"",_12b[2],"\"]");} +if(_12b[3]){temp.push("[contains(concat(\" \", @class, \" \"), \" ",_12b[3]," \")]");} +if(_12b[4]){if(_12b[5]&&_12b[6]){switch(_12b[5]){case"*=":temp.push("[contains(@",_12b[4],", \"",_12b[6],"\")]");break;case"^=":temp.push("[starts-with(@",_12b[4],", \"",_12b[6],"\")]");break;case"$=":temp.push("[substring(@",_12b[4],", string-length(@",_12b[4],") - ",_12b[6].length," + 1) = \"",_12b[6],"\"]");break;case"=":temp.push("[@",_12b[4],"=\"",_12b[6],"\"]");break;case"!=":temp.push("[@",_12b[4],"!=\"",_12b[6],"\"]");}}else{temp.push("[@",_12b[4],"]");}} +_129.push(temp.join(""));return _129;},getItems:function(_12e,_12f,_130){var _131=[];var _132=document.evaluate(".//"+_12e.join("//"),_12f,$$.shared.resolver,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,j=_132.snapshotLength;i<j;i++){_131.push(_132.snapshotItem(i));} +return(_130)?_131:new Elements(_131.map($));}},"normal":{getParam:function(_135,_136,_137,i){if(i==0){if(_137[2]){var el=_136.getElementById(_137[2]);if(!el||((_137[1]!="*")&&(Element.getTag(el)!=_137[1]))){return false;} +_135=[el];}else{_135=$A(_136.getElementsByTagName(_137[1]));}}else{_135=$$.shared.getElementsByTagName(_135,_137[1]);if(_137[2]){_135=Elements.filterById(_135,_137[2],true);}} +if(_137[3]){_135=Elements.filterByClass(_135,_137[3],true);} +if(_137[4]){_135=Elements.filterByAttribute(_135,_137[4],_137[5],_137[6],true);} +return _135;},getItems:function(_13a,_13b,_13c){return(_13c)?_13a:$$.unique(_13a);}},resolver:function(_13d){return(_13d=="xhtml")?"http://www.w3.org/1999/xhtml":false;},getElementsByTagName:function(_13e,_13f){var _140=[];for(var i=0,j=_13e.length;i<j;i++){_140.extend(_13e[i].getElementsByTagName(_13f));} +return _140;}};$$.shared.method=(window.xpath)?"xpath":"normal";Element.Methods.Dom={getElements:function(_143,_144){var _145=[];_143=_143.trim().split(" ");for(var i=0,j=_143.length;i<j;i++){var sel=_143[i];var _149=sel.match($$.shared.regexp);if(!_149){break;} +_149[1]=_149[1]||"*";var temp=$$.shared[$$.shared.method].getParam(_145,this,_149,i);if(!temp){break;} +_145=temp;} +return $$.shared[$$.shared.method].getItems(_145,this,_144);},getElement:function(_14b){return $(this.getElements(_14b,true)[0]||false);},getElementsBySelector:function(_14c,_14d){var _14e=[];_14c=_14c.split(",");for(var i=0,j=_14c.length;i<j;i++){_14e=_14e.concat(this.getElements(_14c[i],true));} +return(_14d)?_14e:$$.unique(_14e);}};Element.extend({getElementById:function(id){var el=document.getElementById(id);if(!el){return false;} +for(var _153=el.parentNode;_153!=this;_153=_153.parentNode){if(!_153){return false;}} +return el;}});document.extend(Element.Methods.Dom);Element.extend(Element.Methods.Dom);Element.Events.domready={add:function(fn){if(window.loaded){fn.call(this);return;} +var _155=function(){if(window.loaded){return;} +window.loaded=true;window.timer=$clear(window.timer);this.fireEvent("domready");}.bind(this);if(document.readyState&&window.webkit){window.timer=function(){if(["loaded","complete"].contains(document.readyState)){_155();}}.periodical(50);}else{if(document.readyState&&window.ie){if(!$("ie_ready")){var src=(window.location.protocol=="https:")?"://0":"javascript:void(0)";document.write("<script id=\"ie_ready\" defer src=\""+src+"\"></script>");$("ie_ready").onreadystatechange=function(){if(this.readyState=="complete"){_155();}};}}else{window.addListener("load",_155);document.addListener("DOMContentLoaded",_155);}}}};var Fx={};Fx.Base=new Class({options:{onStart:Class.empty,onComplete:Class.empty,onCancel:Class.empty,transition:function(p){return-(Math.cos(Math.PI*p)-1)/2;},duration:500,unit:"px",wait:true,fps:50},initialize:function(_158){this.element=this.element||null;this.setOptions(_158);if(this.options.initialize){this.options.initialize.call(this);}},step:function(){var time=$time();if(time<this.time+this.options.duration){this.delta=this.options.transition((time-this.time)/this.options.duration);this.setNow();this.increase();}else{this.stop(true);this.set(this.to);this.fireEvent("onComplete",this.element,10);this.callChain();}},set:function(to){this.now=to;this.increase();return this;},setNow:function(){this.now=this.compute(this.from,this.to);},compute:function(from,to){return(to-from)*this.delta+from;},start:function(from,to){if(!this.options.wait){this.stop();}else{if(this.timer){return this;}} +this.from=from;this.to=to;this.change=this.to-this.from;this.time=$time();this.timer=this.step.periodical(Math.round(1000/this.options.fps),this);this.fireEvent("onStart",this.element);return this;},stop:function(end){if(!this.timer){return this;} +this.timer=$clear(this.timer);if(!end){this.fireEvent("onCancel",this.element);} +return this;}});Fx.Base.implement(new Chain,new Events,new Options);Fx.CSS={select:function(_160,to){if(_160.test(/color/i)){return this.Color;} +var type=$type(to);if((type=="array")||(type=="string"&&to.contains(" "))){return this.Multi;} +return this.Single;},parse:function(el,_164,_165){if(!_165.push){_165=[_165];} +var from=_165[0],to=_165[1];if(!$chk(to)){to=from;from=el.getStyle(_164);} +var css=this.select(_164,to);return{"from":css.parse(from),"to":css.parse(to),"css":css};}};Fx.CSS.Single={parse:function(_169){return parseFloat(_169);},getNow:function(from,to,fx){return fx.compute(from,to);},getValue:function(_16d,unit,_16f){if(unit=="px"&&_16f!="opacity"){_16d=Math.round(_16d);} +return _16d+unit;}};Fx.CSS.Multi={parse:function(_170){return _170.push?_170:_170.split(" ").map(function(v){return parseFloat(v);});},getNow:function(from,to,fx){var now=[];for(var i=0;i<from.length;i++){now[i]=fx.compute(from[i],to[i]);} +return now;},getValue:function(_177,unit,_179){if(unit=="px"&&_179!="opacity"){_177=_177.map(Math.round);} +return _177.join(unit+" ")+unit;}};Fx.CSS.Color={parse:function(_17a){return _17a.push?_17a:_17a.hexToRgb(true);},getNow:function(from,to,fx){var now=[];for(var i=0;i<from.length;i++){now[i]=Math.round(fx.compute(from[i],to[i]));} +return now;},getValue:function(_180){return"rgb("+_180.join(",")+")";}};Fx.Style=Fx.Base.extend({initialize:function(el,_182,_183){this.element=$(el);this.property=_182;this.parent(_183);},hide:function(){return this.set(0);},setNow:function(){this.now=this.css.getNow(this.from,this.to,this);},set:function(to){this.css=Fx.CSS.select(this.property,to);return this.parent(this.css.parse(to));},start:function(from,to){if(this.timer&&this.options.wait){return this;} +var _187=Fx.CSS.parse(this.element,this.property,[from,to]);this.css=_187.css;return this.parent(_187.from,_187.to);},increase:function(){this.element.setStyle(this.property,this.css.getValue(this.now,this.options.unit,this.property));}});Element.extend({effect:function(_188,_189){return new Fx.Style(this,_188,_189);}});Fx.Slide=Fx.Base.extend({options:{mode:"vertical"},initialize:function(el,_18b){this.element=$(el);this.wrapper=new Element("div",{"styles":$extend(this.element.getStyles("margin"),{"overflow":"hidden"})}).injectAfter(this.element).adopt(this.element);this.element.setStyle("margin",0);this.setOptions(_18b);this.now=[];this.parent(this.options);this.open=true;this.addEvent("onComplete",function(){this.open=(this.now[0]===0);});if(window.webkit419){this.addEvent("onComplete",function(){if(this.open){this.element.remove().inject(this.wrapper);}});}},setNow:function(){for(var i=0;i<2;i++){this.now[i]=this.compute(this.from[i],this.to[i]);}},vertical:function(){this.margin="margin-top";this.layout="height";this.offset=this.element.offsetHeight;},horizontal:function(){this.margin="margin-left";this.layout="width";this.offset=this.element.offsetWidth;},slideIn:function(mode){this[mode||this.options.mode]();return this.start([this.element.getStyle(this.margin).toInt(),this.wrapper.getStyle(this.layout).toInt()],[0,this.offset]);},slideOut:function(mode){this[mode||this.options.mode]();return this.start([this.element.getStyle(this.margin).toInt(),this.wrapper.getStyle(this.layout).toInt()],[-this.offset,0]);},hide:function(mode){this[mode||this.options.mode]();this.open=false;return this.set([-this.offset,0]);},show:function(mode){this[mode||this.options.mode]();this.open=true;return this.set([0,this.offset]);},toggle:function(mode){if(this.wrapper.offsetHeight==0||this.wrapper.offsetWidth==0){return this.slideIn(mode);} +return this.slideOut(mode);},increase:function(){this.element.setStyle(this.margin,this.now[0]+this.options.unit);this.wrapper.setStyle(this.layout,this.now[1]+this.options.unit);}});
\ No newline at end of file diff --git a/htdocs/scripts/w3c-validator.js b/htdocs/scripts/w3c-validator.js new file mode 100644 index 0000000..9a95a94 --- /dev/null +++ b/htdocs/scripts/w3c-validator.js @@ -0,0 +1,155 @@ +var W3C = { + + start: function(){ + + //select elements + + W3C.Legends = $$('legend.toggletext'); + W3C.Options = $$('div.options'); + + W3C.TabSet = $('tabset_tabs'); + + W3C.Tabs = W3C.TabSet.getElements('li'); + W3C.TabLinks = W3C.TabSet.getElements('a'); + + W3C.Sections = $$('fieldset.tabset_content'); + + W3C.Submits = $$('input[type=submit]'); + W3C.Forms = $$('form'); + + W3C.Submits.each(function(submit, i){ + var value = submit.value; + submit.setStyle('display', 'none'); + var link = new Element('a', {'class': 'submit', 'href': '#'}); + var span = new Element('span').setHTML(value).inject(link); + link.injectAfter(submit).addEvent('click', function(event){ + new Event(event).stop(); + W3C.Forms[i].submit(); + }); + }); + + + //initialize effects arrays + + W3C.SectionFx = []; + W3C.OptionsFx = []; + + //creating the Effects for the Options + + W3C.Options.each(function(option, i){ + W3C.OptionsFx[i] = new Fx.Slide(option, {'wait': false, 'duration': 180}); + W3C.OptionsFx[i].addEvent('onComplete', function(){ + if (this.element.getStyle('margin-top').toInt() == 0){ + this.wrapper.setStyle('height', 'auto'); + } + }); + }); + + //creating links on legends, with event listeners + + W3C.Legends.each(function(legend, i){ + var html = legend.innerHTML; + var pid = W3C.Sections[i].id.replace(/-/g, '_'); + var opt = '+with_options'; + legend.setHTML('<a href="#'+ pid + opt + '">' + html + '</a>'); + var option = W3C.Options[i]; + var link = legend.getFirst(); + link.addEvent('click', function(event){ + var block = (option.getStyle('margin-top').toInt() == 0); + W3C.setHash((block) ? pid : pid + opt); + new Event(event).stop(); + W3C.refreshOptionLinks(!block, i); + }); + }); + + //creating event listeners on tabs + + W3C.Tabs.each(function(li, i){ + var link = li.getFirst(); + link.href = link.original = link.href.replace(/-/g, '_'); + li.addEvent('click', function(){ + W3C.updateLocation(); + W3C.displaySection(i); + }); + }); + + //updating the location + + W3C.updateLocation(); + + //setting the initial display of the options, based on the location + + W3C.refreshOptionLinks(W3C.WithOptions); + + //attaching the Sections effects, and display section based on the uri + + W3C.Sections.each(function(section, i){ + var fakeId = section.id.replace(/-/g, '_'); + W3C.SectionFx[i] = new Fx.Style(section, 'opacity', {'wait': false, 'duration': 220}); + section.setStyle('display', 'none'); + if (W3C.Location[0] && fakeId.contains(W3C.Location[0].replace(/-/g, '_'))){ + W3C.displaySection(i, true); + W3C.Located = true; + } + }); + + //displaying the first section if no one is located + + if (!W3C.Located) W3C.displaySection(0, true); + + if (window.ie) $$('legend').setStyle('margin-left', '-0.4em'); + }, + + updateLocation: function(){ + W3C.Location = window.location.hash.replace('#', '').split('+'); + W3C.WithOptions = (W3C.Location[1] && W3C.Location[1].contains('with_options')); + }, + + refreshOptionLinks: function(options, idx){ + + if (!options){ + if ($chk(idx)) W3C.OptionsFx[idx].slideOut(); + W3C.Legends.removeClass('toggled'); + } else { + if ($chk(idx)) W3C.OptionsFx[idx].slideIn(); + W3C.Legends.addClass('toggled'); + } + + W3C.TabLinks.each(function(link){ + link.href = (options) ? link.original + '+with_options' : link.original; + }); + }, + + displaySection: function(i, sudden){ + W3C.Sections.each(function(section, j){ + var block = section.getStyle('display') == 'block'; + if (j == i){ + if (block) return; + W3C.Sections[j].setStyles({'opacity': sudden ? 1 : 0, 'display': 'block'}); + if (!sudden) W3C.SectionFx[j].start(0.999999); + if (W3C.WithOptions) W3C.OptionsFx[j].show().fireEvent('onComplete'); + else W3C.OptionsFx[j].hide(); + } else { + if (!block) return; + W3C.Sections[j].setStyles({'display': 'none', 'opacity': 0}); + } + }); + + W3C.Tabs.each(function(link, j){ + if (j == i) link.addClass('selected'); + else link.removeClass('selected'); + }); + }, + + setHash: function(hash){ + if (window.webkit419){ + W3C.FakeForm = W3C.FakeForm || new Element('form', {'method': 'get'}).injectInside(document.body); + W3C.FakeForm.setProperty('action', '#' + hash).submit(); + } else { + window.location.hash = hash; + } + } + +}; + +window.addEvent('domready', W3C.start);
\ No newline at end of file diff --git a/htdocs/style/base.css b/htdocs/style/base.css index 3e82771..bc3b548 100644 --- a/htdocs/style/base.css +++ b/htdocs/style/base.css @@ -1,628 +1,654 @@ -/* - Base Style Sheet for the W3C CSS validation service - And Markup Validation Service. +/* @group Reset */ - Copyright 2000~2007 W3C (MIT, INRIA, Keio). All Rights Reserved. - See http://www.w3.org/Consortium/Legal/ipr-notice.html#Copyright - - $Id: base.css,v 1.11 2007-04-18 23:03:50 ot Exp $ -*/ - -/* - General styling - */ -html { - background-color: white; - color: #11111A; +html, body, form, fieldset, p, a, ul, ol, li, div, legend, label, +br, input, button, textarea, h1, h2, h3, h4, h5, strong { + margin: 0; + padding: 0; + border: 0; + font-weight: normal; + font-style: normal; + font-size: 100%; + font-family: Helvetica, Arial, Sans-Serif; + vertical-align: baseline; + background-color: transparent; + color: #1f2126; + line-height: 1; + text-align: left; } -body { - margin: auto auto; - padding-left: 6%; - padding-right: 6%; - background-color: white; - color: #11111A; - font-family: Helvetica, "Trebuchet MS", Arial, sans-serif; - font-size: 1em; /* setting base font to user's prefered size */ - min-width: 50em; +a img { + border: 0; } -p, pre, dt { - line-height: 130%; - padding-left: 1.5em; -} - -/* - Main blocks - see also ul.navbar - */ -#banner { - background-color: white; - color: #11111A; - background-image: url(../images/header.jpg); - background-repeat: no-repeat; - background-attachment: scroll; - background-position: top right; - padding: 4px 0 0 0; - height: 55px; - margin-bottom: 0; - margin-top: 22px; - border: 0; +a:link, a:visited { + text-decoration: underline; + color: #365D95; +} +a:hover, a:active { + text-decoration: underline; + color: #1f2126; } -#banner h1 { - vertical-align: middle; - font-size: 1.5em; - display: inline; +ul, ol { + list-style: none; } -p#tagline { - font-size: x-small; - padding: 0; - line-height: 100%; - margin: 0 0 4em .8em; - background-color: white; - color: #11111A; - clear: both; +abbr[title], acronym[title], span[title], strong[title] { + border-bottom: thin dotted; + cursor: help; } -#main { - padding: 15px 0; - background-color: white; - margin: 0; - color: #11111A; +acronym:hover, abbr:hover { + cursor: help; } -.intro { - font-style: italic; - font-size: smaller; - text-align: justify; +/* @end */ + +/* @group Basics */ + +body { + padding-bottom: 6em; + min-width: 40em; /* for the tabs, mostly */ } -/* - Headers - */ +p { + line-height: 130%; +} -h1 { - font-family: "Gill Sans", Helvetica, sans-serif; - font-weight: bold; - font-style: normal; - text-decoration: none; +strong { + font-weight: bold; } h2 { color: #690; + font-family:Verdana,Arial,sans-serif; background-color: white; - padding: 5px 15px; - margin-top: 30px; - margin-bottom: 20px; font-size: 1.3em; - text-align: center; - text-decoration: none; - font-family: "Gill Sans", sans-serif; + margin-bottom: 1em; } h3 { + font-family:Verdana,Arial,sans-serif; color: #690; background-color: white; font-size: 1.1em; - padding: 2px 10px; border-bottom: 1px dotted #aaaa77; text-decoration: none; - font-family: "Gill Sans", sans-serif; + margin-top: 1em; + margin-bottom: 1em; } h4 { + font-family:Verdana,Arial,sans-serif; color: #690; - background-color: white; - font-weight: 600; font-style: italic; text-decoration: none; - font-size: 1.0em; - padding-left: 15px; - font-family: "Gill Sans", sans-serif; + font-size: .9em; + font-weight:600; + margin-top: 1.5em; + margin-bottom: .5em; } h5,h6 { - color: #11111A; + font-family:Verdana,Arial,sans-serif; + color: #11111a; background-color: white; - font-family: "Gill Sans", sans-serif; font-weight: normal; - padding-left: 15px; + font-size: small; + margin-top: 1em; + margin-left: 1em; + margin-bottom: .7em; } -/* - General link styling - */ -a:link, a:visited { - color: #005A9C; - background-color: transparent; - text-decoration: none; + /* tables in the documentation */ -} + table { + } + td, th{ + padding: 6px; + } -a:hover, a:active { - color: #005A9C; - background-color: transparent; - text-decoration: underline; + +/* @group Inputs */ + +input#uri, input#file, input#uploaded_file, textarea { + font-family: Monaco, "Courier New", Monospace; + font-size: 0.9em; + border: 1px solid #bbb; + border-top: 1px solid #777; + border-bottom: 1px solid #ddd; + background: #fefefe url(../images/textbg.png) no-repeat top left; + padding: 0.2em 0.2em; + max-width: 1000px; + font-variant: normal; } +input#uri, input#file, input#uploaded_file { + width: 85%; + margin: 0.3em 0 0 1em; +} -/* - Other basic styles - */ +input#file, input#uploaded_file { + width: 30em; +} -/* TODO - add ol, li, td here ? */ -p, dt, ul, ol { - margin-left: 1.5em; - margin-right: 1.5em; +a.submit { + display: block; + width: 10em; + text-align: center; + margin: 0 auto; + background: url(../images/button-left.png) no-repeat center left; + text-decoration: none; } +a.submit span { + display: block; + padding: 1.2em 2em; + background: url(../images/button-right.png) no-repeat center right; +} -dd { - margin-left: 35px; - margin-right: 25px; +textarea { + width: 98.5%; } -#news dt { - font-weight: bold; - margin-top: 1em; - } +p.submit_button input { + overflow: visible; + width: auto; + background: #fff; + color: #1f2126; + padding: 0.2em 0.4em 0 0.3em; + font-size: 1.2em; + width: 20em; + text-align: center; + border-bottom: 2px solid #444; + border-right: 2px solid #444; + border-top: 1px solid #aaa; + border-left: 1px solid #aaa; + background: #eee url(../images/grad.png) repeat-x top left; + cursor: pointer; +} -img { - margin:0; - padding: 0; - vertical-align: middle; - border: 0; +p.submit_button input:active { + border-bottom: 1px solid #aaa; + border-right: 1px solid #aaa; + border-top: 2px solid #444; + border-left: 2px solid #444; } -acronym:hover, abbr:hover { - cursor: help; +label { + font-size: 0.9em; + padding-left: .2em; + padding-right: .2em; } -abbr[title], acronym[title], span[title], strong[title] { - border-bottom: thin dotted; - cursor: help; +div.options select { + margin-right: 0.8em; } -pre, code, tt { - font-family: "Bitstream Vera Sans Mono", Monaco, "Andale Mono", monospace; - line-height: 100%; - white-space: pre; +div.options label { + margin-right: 0.3em; } -a:link img, a:visited img { - border-style: none; +fieldset.moreoptions div table tr.subchoice th { + padding-left: 3em; } -ul.toc { - list-style: none; +/* @end */ + +/* @group Header */ + +h1#title { + font-family: "Myriad Web", "Myriad Pro", "Gill Sans", Helvetica, Arial, Sans-Serif; + color: #fdfdfd; + font-size: 1.6em; + background: url(../images/head-bl.png) bottom left no-repeat; + padding-bottom: 0.430em; } -/* tables in the documentation */ -table { - border-collapse: collapse; - border-right: 1px solid #ccc; +h1 span { + border-bottom: 1px solid #6383b1; + border-color: #4e6f9e; } -td, th{ - border-top: 0px solid #ddd; - border-bottom: 1px solid #ccc; - border-left: 1px solid #eee; - padding: 6px; - border-collapse: collapse; + +h1#title a:link, h1#title a:hover, h1#title a:visited, h1#title a:active { + color: #fdfdfd !important; + text-decoration: none; } -th { - background-color: #eee; - color: #11111A; - border-right: 1px solid #ccc; + +h1#title img { + vertical-align: middle; + margin-right: 0.7em; } +div#banner { + background: #365D95 url(../images/head-br.png) bottom right no-repeat; + margin: 1.5em 2em; +} +p#tagline { + font-size: 0.7em; + margin: -2em 0 0 12.1em; + padding-bottom: 1em; + letter-spacing: 0.1em; + line-height: 100% !important; + color: #D0DCEE; +} -/* - Stuff we don't actually want too visible - or not at all - */ -.hideme { display: none; } +ul#lang_choice { + position: absolute; + top: 0; + right: 0; + font-size: 0.7em; + padding: 0.8em 0; + margin-right: 3.3em; +} +ul#lang_choice a:link, ul#lang_choice a:visited { + text-decoration: none; +} -/* - Forms on front page, with tabtastic and toggable extra options - */ -#frontforms { - margin-left: 12%; - margin-right: 12%; - +ul#lang_choice a:hover, ul#lang_choice a:active { + text-decoration: underline; } +ul#lang_choice li { + display: inline; + padding-left: 0.5em; +} +/* @end */ -/* Fieldsets */ +/* @group Tabs */ -/* generic style for form fields */ -fieldset { - border: 1px solid #005A9C; - background-color: transparent; - color: #11111A; - margin-bottom: 3em; - margin-left: 0; -} -fieldset legend { - font-weight: bold; - padding: .5em; -} -fieldset.moreoptions legend { - font-weight: normal; +ul#tabset_tabs { + height: 1.62em; } -fieldset.moreoptions table tr.subchoice th { - font-weight: normal; - padding-left: 3em; +ul#tabset_tabs li { + cursor: pointer; + float: left; + margin-right: 0.245em; + background: #DADDE3 url(../images/tab-tl.png) no-repeat top left; + border-bottom: 1px solid #CBD0DB; } -fieldset p { - margin: 0 0 0.8em 0; - padding: 0; +ul#tabset_tabs li.selected { + background: #EAEBEE url(../images/round-tl.png) no-repeat top left; + border-bottom: 1px solid #EAEBEE; } -fieldset div { - padding-top: 1em; +ul#tabset_tabs li.selected a:link, ul#tabset_tabs li.selected a:visited { + color: #1f2126; + background: #EAEBEE url(../images/round-tr.png) no-repeat top right; } -fieldset p.instructions { - padding-top: 1em; - padding-bottom: 0; - margin-bottom: 0; +ul#tabset_tabs li span { + color: #616571; } -fieldset p.submit_button, fieldset div.submit_button { - text-align: right; - padding-top: .5em; + +body ul#tabset_tabs li.selected a span { + color: #3d424f; } -fieldset p.submit_button input, fieldset div.submit_button input { - font-weight: bold; - color: #005A9C; - background: #fff; - padding: 0.2em 2em; - border: 2px outset #005A9C; + +ul#tabset_tabs li a:link, ul#tabset_tabs li a:visited { + color: #365D95; + display: block; + padding: 0.515em 1.3em 0.215em 0.8em; + background: #DADDE3 url(../images/tab-tr.png) no-repeat top right; + margin-left: 0.5em; + font-size: 0.9em; + font-weight: bold; + text-decoration: none; } -/* home page fieldsets */ +ul#tabset_tabs li a:hover, ul#tabset_tabs li a:active { + color: #6887b5; +} -.tabset_tabs { - margin:0; - padding:0; - list-style-type:none; - position:relative; - z-index:2; - white-space:nowrap; +ul#tabset_tabs li a:hover span, ul#tabset_tabs li a:active span { + color: #808c9d; } -.tabset_tabs li { - margin:0; - padding:0; - display:inline; +ul#tabset_tabs li.selected span { + color: #5d6371; } -.tabset_tabs a { - border: 0; - border-left: 1px solid #f2f7fa; - text-decoration:none; - padding: 0.8em 0.6em 0 0.6em; - background: white; - font-weight: bold; +/* @end */ + +/* @group Contents */ + +div#frontforms { + background: #fff; + padding: 0 2em; } -.tabset_tabs a:hover { - color:#424242 ! important; - background: #D1DAE9 url(../images/sm_gradient_hover.gif) 0 0 repeat-x; - text-decoration:none; +div#fields { + clear: both; + background: #EAEBEE url(../images/round-tr.png) no-repeat top right; + padding: 0.5em 1.3em; + border-bottom: 1px solid #DCDDE0; } -.tabset_tabs li.firstchild a, .tabset_tabs li:first-child a { - border-left: 1px solid white; +fieldset { + background: #EAEBEE; } +legend { + font-size: 1.1em; + padding: 1em 0 0.23em; + letter-spacing: 0.06em; +} -.tabset_tabs a.active, .tabset_tabs a.active:hover { - color:#424242 ! important; - background-color: #f2f7fa !important; - background: #f2f7fa url(../images/sm_gradient_active.gif) 0 0 repeat-x; - /*border-color: #D1DAE9; - border-left-width:1px; */ - cursor:default; - border: 1px solid #D1DAE9 !important; - border-bottom: transparent !important; - - padding-top:0.8em; - padding-bottom:1px; - /* color: #fffff0 !important; */ - } +legend a:link, legend a:visited, legend a:hover, legend a:active { + text-decoration: none; +} -div#fields { - border: 1px solid #D1DAE9; - -/* background-color: #f2f7fa;*/ - background: #f2f7fa url(../images/lg_gradient.gif) bottom left repeat-x; - margin: 0; - padding: 0; -} -.tabset_content { - border: none; - position:relative; - z-index:1; - padding:0.5em 1em; - border-left: 1px solid white; - padding-bottom: .5em; - margin-bottom: 0; -} - -input { - vertical-align: middle; +legend.toggletext { + cursor: pointer; + padding-left: 0.8em; + background: #EAEBEE url(../images/arrow-closed.png) 0 1.2em no-repeat; } -input.reset { - text-align: center; + +legend.toggled { + background: #EAEBEE url(../images/arrow-open.png) 0 1.4em no-repeat; } -input.default { - text-align: center; - font-weight: bold; + +p.instructions { + color: #4D525E; + font-size: 0.80em; + padding-bottom: 1em; + padding-top: 0.5em; } +div.options { + padding: 0.7em 0 0.5em 1em; +} -/* the following from http://www.mindsack.com/toggle/ (c) Kent Brewster */ +div.options, p.submit_button, p.instructions, p#note { + border-top: 1px solid #cbcdd5; + background: #EAEBEE url(../images/double.png) left top repeat-x; +} -.hidden -{ - display:none; +p.submit_button { + padding: 0.5em 0 0.3em; + text-align: center; } -fieldset.moreoptions { -border-color: #ADDBFE; -border-style: dotted; -margin-bottom: 0; -padding-left: .3em; + +form { + padding-bottom: 1em; } -fieldset.moreoptions div, fieldset.moreoptions table { -margin-top: 0; -margin-left: .5em; -font-size: smaller; + +p#note { + clear: both; + color: #4D525E; + font-size: 0.9em; + padding: 0.5em 0 0.1em; } -fieldset.moreoptions td, fieldset.moreoptions th, fieldset.moreoptions table { - border: 0 !important; +/* @end */ + +/* @group Menu */ + +ul#menu { + text-align: center; + margin: 1em 2em; + background: #EAEBEE url(../images/round-br.png) no-repeat bottom right; + padding: 0.5em 0 0.3em; + border-top: 1px solid #DCDDE0; } -fieldset.moreoptions th { - background-color: transparent !important; - text-align: left; + +ul#menu span { + display: none; } -#frontforms fieldset a:link, #frontforms fieldset a:hover, #frontforms fieldset a:visited, #frontforms fieldset a:active { - color: #005A9C !important; +ul#menu a:link, ul#menu a:visited { + background: #EAEBEE; + color: #365D95; + text-decoration: none; } -fieldset a:link, fieldset a:visited, fieldset legend a:link, fieldset legend a:visited { -/*font-weight: bold;*/ + +ul#menu a:hover, ul#menu a:active { + color: #1f2126; + text-decoration: underline; } -fieldset.closed { -border: 0; +ul#menu li { + display: inline; + margin-right: 0.8em; } -/* IE6 hack, avoid "leaking" of fiedset background into legend -(more hacking in tabtastic.css to make the "ghost" of the legend disappear) */ -* html legend { position:absolute; top: -25em !important; left: -25em !important; } -* html fieldset{ position: relative; margin-top:0 !important; padding-top:0 !important; } +/* @end */ +/* @group Footer */ +div#footer { + padding: 0 2em; +} +p#activity_logos { + float: left; + margin-right: 2em; +} -/* - Menu Bar - */ +p#support_logo { + float: right; + font-size: 0.8em; + text-align: center; + margin-left: 2em; +} -ul.navbar { - color: #005A9C; - border-top: 1px solid #005A9C; - border-bottom: 1px solid #005A9C; - background-color: white; - margin: 3em 0 0 0; - padding: 3px 0 3px 0; - line-height: 140%; - vertical-align: bottom; - font-size: 0.9em; - list-style-type: none; +p.copyright { text-align: center; - font-weight: bold; + text-transform: uppercase; + font-size: 0.7em; + line-height: 1.4; } -ul.navbar { padding-left: 1em; padding-right: 1em} -ul.navbar li { - display: inline; +p.copyright, p.copyright a { + text-decoration: none; + color: #7C8395; +} + +p.copyright a:link, p.copyright a:visited { + color: #A3756E; } -ul.navbar li a { - padding-right: 1.2em; - padding-left: 1.2em; +p.copyright a:hover, p.copyright a:active { + color: #7D4A42; } -/* - legalese and logos beneath the menu bar - */ p#version_info { - font-size: x-small; + font-size: small; text-align: center; color: #888; background-color: white; - margin-top: 20px; - margin-left: 210px; - margin-right: 240px; } -p#activity_logos { -float:left; -width: 144px; -padding: 8px 0 40px 0; +/* @end */ + +/* @group docs */ + +div.doc { + margin: 1em 2em; + padding: 0.5em 0 0.3em; } -p#support_logo { -float: right; width: 180px; padding: 0; margin-top: 12px; font-size: x-small; text-align:center; + +/* Set line height to 1.4x (from 1.3x on general site) to allow for various inline decoration. */ +div.doc p, div.doc li { + line-height: 150% !important; +} +div.doc p { + margin-bottom: .7em; + margin-top: .5em; } - -p.copyright { - margin-left: 210px; - margin-right: 240px; - font-size: x-small; - text-align: justify; - text-transform: uppercase; - font-family: "Bitstream Vera Sans Mono", monospace; - color: #888; - background-color: white; - line-height: 120%; -} - -p.copyright a { - color: #88f; - background-color: white; - text-decoration: none; +div.doc p, div.doc dt, div.doc ul, div.doc ol { + margin-left: 1.5em; + margin-right: 1.5em; } +div.doc ul li { + list-style-type: disc; + margin-left: 1em; +} +/* documentation - table of contents */ +#toc { /* making the toc a bit more compact and standing out */ + font-size: .85em; + font-weight: bold; + margin-bottom: 2em; + margin-left: 3em; +} -/* - Jump Bar - results page - based on navbar styling -(from markup validator - note used in this design yet) - */ -#jumpbar { - margin-top: -1.5em; - margin-bottom: 1em; +div.doc div#toc ol { + list-style-type: decimal; } -#jumpbar li { - color: #11111A !important; -} -/* language selection bar */ -#lang_choice { - position: absolute; - display: block; - width: 50em; - top: 0px; - text-align: right; - right: 75px; - margin-top: 6px; - font-size: x-small; - list-style: none; +div.doc div#toc ol li { + line-height: 130%; + font-weight: bold; +} +div.doc div#toc ol li ol { + list-style-type: lower-alpha; + font-weight: normal; + margin-left: 1em; +} +div.doc div#toc ol li ol li ol{ + list-style-type: lower-roman; +} + + +/* documentation - error explanations */ +dl#expl dt code { /* headings for an error */ + white-space: normal; + font-weight: bold; +} + +dl#expl dt { + border-top: 1px dashed black; + margin-top: 2em; + margin-bottom: 1em; +} + +div.doc dt { + margin-top: 1.2em; + margin-bottom: .2em; +} +div.doc dt, div.doc dt a { + font-style: italic; +} +div.doc dd { + margin-right: 0; /* no need for the extra margin if we nicely put the text of the dd in a paragraph */ +} +div.doc var { /* headings for an error */ + color: #006; +} + +/* A snippet of code used inline. */ +div.doc code { + white-space: normal; + display: inline; + padding-left: .2em; + padding-right: .2em; + color: black; + font-family: Monaco, "Courier New", monospace; + border: 1px dotted #ccc; } -#lang_choice li { display: inline; padding-left: .5em;} - - -/* - Documentation pages - */ - - /* Set line height to 1.4x (from 1.3x on general site) to allow for various inline decoration. */ - div.doc { - line-height: 140%; - } - - /* documentation - table of contents */ - #toc { /* making the toc a bit more compact and standing out */ - font-size: .85em; - font-weight: bold; - margin-bottom: 40px; - } - - div.doc div#toc ol { - list-style-type: decimal; - } - div.doc div#toc ol li ol { - list-style-type: lower-alpha; - } - div.doc div#toc ol li ol li ol{ - list-style-type: lower-roman; - } - - - /* documentation - error explanations */ - dl#expl dt code { /* headings for an error */ - white-space: normal; - font-weight: bold; - } - - dl#expl dt { - border-top: 1px dashed black; - margin-top: 2em; - margin-bottom: 1em; - } - - div.doc dd { - margin-right: 0; /* no need for the extra margin if we nicely put the text of the dd in a paragraph */ - } - div.doc var { /* headings for an error */ - color: #006; - } - - /* A snippet of code used inline. */ - div.doc code { - white-space: normal; - font-weight: bold; - display: inline; - padding-left: .2em; - padding-right: .2em; - background: #eef; - color: #337; - font-family: "Bitstream Vera Sans Mono", monospace; - border: 1px dotted #ccf; - } - - div.doc code.block { - display: block; - padding: 1em; - white-space: pre; - margin-top: 1em; - margin-bottom: 1em; - margin-right: 3em; - } - - div.doc code samp { - font-weight: normal; - color: black; - font-style: italic; - } - - /* reference tables */ - - div.doc table { - border-collapse: collapse; - border-right: 1px solid #ccc; - } - div.doc table td, .doc table th{ - border-top: 0px solid #ddd; - border-bottom: 1px solid #ccc; - border-left: 1px solid #eee; - padding: 6px; - border-collapse: collapse; - } - div.doc table th { - background-color: #eee; - color: #11111A; - border-right: 1px solid #ccc; - } - - /* warning on the home page for test instances */ - #test_warning { - border-left: 1px solid #ccc; - border-right: 1px solid #ccc; - line-height: 160%; - text-align: center; - margin-top: 2em; - margin-left: 12%; - margin-right: 12%; - padding-left: 1.5em; - padding-right: 1.5em; - color: black; - background-color: white; - } - - #test_warning img { - width: 1.3em; - padding-bottom: .3em; - }
\ No newline at end of file + +div.doc code.block { + display: block; + padding: 1em; + white-space: pre; + margin-top: 1em; + margin-bottom: 1em; + margin-right: 3em; +} + +div.doc code samp { + font-weight: normal; + color: black; + font-style: italic; +} + +/* reference tables */ + +div.doc table { + border-collapse: collapse; + border-right: 1px solid #ccc; +} +div.doc table td, .doc table th{ + border-top: 0px solid #ddd; + border-bottom: 1px solid #ccc; + border-left: 1px solid #eee; + padding: 6px; + border-collapse: collapse; +} +div.doc table th { + background-color: #eee; + color: #11111A; + border-right: 1px solid #ccc; +} + +div.doc table { + margin-top: 1em; + margin-bottom: .5em; + border-collapse: collapse; + border-right: 1px solid #ccc; +} + +div.doc td, div.doc th { + border-top: 0px solid #ddd; + border-bottom: 1px solid #ccc; + border-left: 1px solid #eee; + border-collapse: collapse; + +} +div.doc th { + background-color: #eee; + color: #11111A; + border-right: 1px solid #ccc; +} + + +/* @group home page, news text */ + +div.intro { + margin: 1em 2em; + padding: 0.5em 0 0.3em; +} + +#news dt { + font-weight: bold; + margin-top: 1.5em; + margin-bottom: .3em; + } + +#news dd { + margin-left: 2.5em; + margin-right: 1.5em; + } + + +/* warning on the home page for test instances */ +#test_warning { + border-left: 1px solid #ccc; + border-right: 1px solid #ccc; + line-height: 160%; + text-align: center; + margin-top: 2em; + margin-left: 12%; + margin-right: 12%; + padding-left: 1.5em; + padding-right: 1.5em; + color: black; + background-color: white; +} + +#test_warning img { + width: 1.3em; + vertical-align: middle; +}
\ No newline at end of file diff --git a/htdocs/style/results.css b/htdocs/style/results.css index bd8ab1b..6d3f6c8 100644 --- a/htdocs/style/results.css +++ b/htdocs/style/results.css @@ -1,9 +1,51 @@ /* style sheet for the validator's results page */ -/* $Id: results.css,v 1.16 2007-05-07 16:14:15 ot Exp $ */ +/* $Id: results.css,v 1.17 2007-05-31 02:32:14 ot Exp $ */ + +div#results_container { + margin: 2em; +} +div#results_container ul li { + list-style-type: disc; + margin-left: 1em; +} +div#results_container ul { + margin-left: 1.5em; + margin-right: 1.5em; +} + + +div#results_container ul.navbar { + border-top: 1px solid #DCDDE0; + border-bottom: 1px solid #DCDDE0; + text-align: center; + margin: 0 0 2em 0; + padding: .5em; +} +div#results_container ul.navbar span { + display: none; +} + +div#results_container ul.navbar a:link, div#results_container ul.navbar a:visited { + color: #365D95; + text-decoration: none; + margin-right: 1em; + margin-left: 1em; +} + +div#results_container ul.navbar a:hover, div#results_container ul.navbar a:active { + color: #1f2126; + text-decoration: underline; + margin-right: 1em; + margin-left: 1em; +} + +div#results_container ul.navbar li { + display: inline; +} .input { color: black; - background-color: #eee; + background-color: #EAEBEE; font-family: "Bitstream Vera Sans Mono", monospace; font-size: small; } @@ -37,8 +79,47 @@ div#revalidate_button { table.header { clear: both; width: 100%; + margin-top: 0; + padding-top: 0; } +div#results_container table { + border-collapse: collapse; + border-right: 1px solid #ccc; +} +div#results_container table td, div#results_container table th{ + border-top: 0px solid #ddd; + border-bottom: 1px solid #ccc; + border-left: 1px solid #EAEBEE; + padding: 6px; + border-collapse: collapse; +} +div#results_container table th { + background-color: #EAEBEE; + color: #11111A; + border-right: 1px solid #ccc; +} + +div#results_container table { + margin-bottom: .5em; + border-collapse: collapse; + border-right: 1px solid #ccc; +} + +div#results_container td, div#results_container th { + border-top: 0px solid #ddd; + border-bottom: 1px solid #ccc; + border-left: 1px solid #EAEBEE; + border-collapse: collapse; + +} +div#results_container th { + background-color: #EAEBEE; + color: #11111A; + border-right: 1px solid #ccc; +} + + fieldset#revalidate_opts table.header { margin-top: .5em; } @@ -60,7 +141,7 @@ ol#warnings, ol#error_loop, ol#fatal-errors { } ol li.msg_info, ol li.msg_warn, ol li.msg_err { - border: 1px solid #eee; + border: 1px solid #EAEBEE; border-top: 0; list-style-position: inside; padding: 1em; @@ -75,7 +156,7 @@ ol li.msg_info:hover, ol li.msg_warn:hover, ol li.msg_err:hover { ol#warnings, ol#error_loop, ol#fatal-errors { padding:0; - border-top: 1px solid #eee; + border-top: 1px solid #EAEBEE; } ol#warnings li ul li, ol#error_loop ul li, ol#error_loop p, ol#warnings p { @@ -87,7 +168,8 @@ ol#warnings li ul li, ol#error_loop ul li, ol#error_loop p, ol#warnings p { li span.err_type img { width: 1.2em; height: 1.2em; - padding-bottom: .1em; + padding-bottom: .2em; + vertical-align: middle; } /* @@ -180,9 +262,11 @@ code.input strong { font-family: "Bitstream Vera Sans Mono", monospace; font-size: smaller; - background: #eee; + background: #EAEBEE; border: 1px solid black; - margin: 1em; + margin-top: 1em; + list-style-position: inside; + list-style-type: decimal-leading-zero; } #source ol li { margin: 1em; @@ -197,7 +281,7 @@ code.input strong { pre.source { font-family: "Bitstream Vera Sans Mono", monospace; border: 1px solid black; - background: #eee; + background: #EAEBEE; margin: 1em; padding: 1em; overflow: scroll; @@ -284,12 +368,12 @@ h3#congrats { color: #690 !important; } -.valid { +.valid, .valid strong { background-color: #55B05A; color: white; } -.tentative_valid { +.tentative_valid, .tentative_valid strong { /* we could use a different color than for "valid" */ /* background-color: #888; */ /* ... or simply use the same */ @@ -297,7 +381,7 @@ h3#congrats { color: white; } -.invalid { +.invalid, .invalid strong { background-color: #D23D24 !important; color: white !important; } @@ -331,7 +415,7 @@ p.backtop { color: #bbc; font-size: x-small; padding-right: 0 !important; - margin: 1em !important; + margin: 1em 0 !important; text-transform: uppercase; font-weight: bold; padding-top: .3em; diff --git a/share/templates/en_US/docs_errors.tmpl b/share/templates/en_US/docs_errors.tmpl index 5e034c5..b1d6819 100644 --- a/share/templates/en_US/docs_errors.tmpl +++ b/share/templates/en_US/docs_errors.tmpl @@ -1,9 +1,9 @@ -<!--#set var="revision" value="\$Id: docs_errors.tmpl,v 1.4 2005-07-26 23:11:40 ot Exp $" ---><!--#set var="date" value="\$Date: 2005-07-26 23:11:40 $" +<!--#set var="revision" value="\$Id: docs_errors.tmpl,v 1.5 2007-05-31 02:32:14 ot Exp $" +--><!--#set var="date" value="\$Date: 2007-05-31 02:32:14 $" --><!--#set var="title" value="Error Explanations for The W3C Markup Validation Service" --><!--#set var="relroot" value="../" --><!--#include virtual="../header.html" --> - +<div class="doc"> <h2 id="skip">Explanation of the error messages<br /> for the W3C Markup Validator</h2> <h3 id="TableOfContents">Table of Contents</h3> @@ -43,6 +43,7 @@ </TMPL_LOOP> </ul> </div> +</div><!-- doc --> <!--#include virtual="../footer.html" --> </body> </html> diff --git a/share/templates/en_US/footer.tmpl b/share/templates/en_US/footer.tmpl index bee9609..df628ed 100644 --- a/share/templates/en_US/footer.tmpl +++ b/share/templates/en_US/footer.tmpl @@ -1,12 +1,15 @@ +</div><!-- results_container--> + <ul class="navbar" id="menu"> - <a href="./" accesskey="1" title="Go to the Home Page for The W3C Markup Validation Service"><strong>Home</strong></a></li> - <li><a href="./about.html" title="Information About this Service">About...</a></li> + <li><a href="./" accesskey="1" title="Go to the Home Page for The W3C Markup Validation Service">Home</a><span> | </span></li> + <li><a href="./about.html" title="Information About this Service">About...</a><span> | </span></li> - <li><a href="./whatsnew.html" title="The changes made to this service recently">News</a></li> - <li><a href="./docs/" accesskey="3" title="Documentation for this Service">Docs</a></li> - <li><a href="./docs/help.html" title="Help and answers to frequently asked questions">Help & <acronym title="Frequently Asked Questions">FAQ</acronym></a></li> - <li><a href="./feedback.html" accesskey="4" title="How to provide feedback on this service">Feedback</a></li> + <li><a href="./whatsnew.html" title="The changes made to this service recently">News</a><span> | </span></li> + <li><a href="./docs/" accesskey="3" title="Documentation for this Service">Docs</a><span> | </span></li> + <li><a href="./docs/help.html" title="Help and answers to frequently asked questions">Help & <acronym title="Frequently Asked Questions">FAQ</acronym></a><span> | </span></li> + <li><a href="./feedback.html" accesskey="4" title="How to provide feedback on this service">Feedback</a><span> | </span></li> </ul> +<div id="footer"> <p id="activity_logos"> @@ -48,7 +51,7 @@ <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Members">Member</a> privacy statements. </p> - +</div><!-- footer --> </body> </html> diff --git a/share/templates/en_US/header.tmpl b/share/templates/en_US/header.tmpl index f252219..2ba921d 100644 --- a/share/templates/en_US/header.tmpl +++ b/share/templates/en_US/header.tmpl @@ -23,10 +23,14 @@ X-W3C-Validator-Errors: <TMPL_VAR NAME="valid_errors_num"> HTML validation service, based on an SGML parser." /> </head> <body> -<div id="banner"> -<h1 id="title"><a href="http://www.w3.org/"><img height="48" alt="W3C" id="logo" - src="http://www.w3.org/Icons/WWW/w3c_home_nb" /></a><a href="./"><img src="./images/markup_validation_service.png" alt="Markup Validation Service" /></a></h1> -</div> -<p id="tagline"> -</p> + + <div id="banner"> + <h1 id="title"> + <a href="http://www.w3.org/"><img alt="W3C" width="110" height="61" id="logo" src="./images/w3c.png" /></a> + <a href="./"><span>Markup Validation Service</span></a> + </h1> + <p id="tagline">Check the markup (HTML, XHTML) of Web documents</p> + </div> + +<div id="results_container"> |