Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 100 lines (95 sloc) 3.099 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
<?php
$baseURL = "http://ajax.googleapis.com/ajax/libs/";
$libraries = array(
"Dojo" => array(
"versions" => array( "1.1.1", "1.2.0", "1.2.3", "1.3.0", "1.3.1", "1.3.2", "1.4.0", "1.4.1", "1.4.3", "1.5.0" ),
"url" => "dojo/XYZ/dojo/dojo.xd.js"
),
"ExtCore" => array(
"versions" => array( "3.0.0", "3.1.0" ),
"url" => "ext-core/XYZ/ext-core.js"
),
"jQuery" => array(
"versions" => array( "1.2.3", "1.2.6", "1.3.0", "1.3.1", "1.3.2", "1.4.0", "1.4.1", "1.4.2", "1.4.3", "1.4.4", "1.5.0" ),
"url" => "jquery/XYZ/jquery.min.js"
),
"jQueryUI" => array(
"versions" => array( "1.5.2", "1.5.3", "1.6.0", "1.7.0", "1.7.1", "1.7.2", "1.7.3", "1.8.0", "1.8.1", "1.8.2", "1.8.4", "1.8.5", "1.8.6", "1.8.7", "1.8.8", "1.8.9" ),
"url" => "jqueryui/XYZ/jquery-ui.min.js"
),
"MooTools" => array(
"versions" => array( "1.1.1", "1.1.2", "1.2.1", "1.2.2", "1.2.3", "1.2.4", "1.2.5", "1.3.0" ),
"url" => "mootools/XYZ/mootools-yui-compressed.js"
),
"Prototype" => array(
"versions" => array( "1.6.0.2", "1.6.0.3", "1.6.1.0", "1.7.0.0" ),
"url" => "prototype/XYZ/prototype.js"
),
"scriptaculous" => array(
"versions" => array( "1.8.1", "1.8.2", "1.8.3" ),
"url" => "scriptaculous/XYZ/scriptaculous.js"
),
"SWFObject" => array(
"versions" => array( "2.1", "2.2" ),
"url" => "swfobject/XYZ/swfobject.js"
),
"YUI" => array(
"versions" => array( "2.6.0", "2.7.0", "2.8.0r4", "2.8.1", "2.8.2", "3.3.0" ),
"url" => "yui/XYZ/build/yui/yui-min.js"
)
);

if( count($_POST) ) {
$includes = array();
foreach( $_POST as $name => $ver ){
$url = $libraries[ $name ][ "url" ];
if( $name == "YUI" && $ver[0] == "2" ) {
$url = str_replace( "/yui", "/yuiloader", $url, $count = 2 );
}
$include = "<script src='$baseURL".str_replace("XYZ", $ver, $url, $count = 1)."'></script>\n";
if( $lib == "prototype" ) { // prototype must be included first
array_unshift( $includes, $include );
} else {
array_push( $includes, $include );
}
}

$includes = implode( "\n", $includes );
$suite = file_get_contents( "index.html" );
echo str_replace( "<!-- Includes -->", $includes, $suite );
exit;
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Run jQuery Test Suite Polluted</title>
<style type="text/css">
.otherlibs fieldset {
width: 400px
}
.otherlibs label{
margin: 5px 0px 5px 20px;
}
</style>
</head>

<body id="body">
<h1 id="header">jQuery Test Suite</h1>
<h2 id="banner" class="fail"></h2>
<h2 id="userAgent">Choose other libraries to include</h2>

<form class="otherlibs" action="./polluted.php" method="POST">
<?php
foreach( $libraries as $name => $data ) {
echo "<fieldset><legend>$name</legend>";
$i = 0;
foreach( $data[ "versions" ] as $ver ) {
$i++;
echo "<label><input type='radio' name='$name' value='$ver' />$ver</label>";
if( !($i % 4) ) echo "<br />";
}
echo "</fieldset>";
}
?>
<input type="submit" value=" Run " class="submit" />
</form>
</body>
</html>
Something went wrong with that request. Please try again.