


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 <link rel="icon" type="image/vnd.microsoft.icon" href="http://www.gstatic.com/codesite/ph/images/phosting.ico">
 
 <script type="text/javascript">
 
 
 
 var codesite_token = null;
 
 
 var logged_in_user_email = null;
 
 
 var relative_base_url = "";
 
 </script>
 
 
 <title>jquery.MetaData.js - 
 jquery-multifile-plugin -
 
 Project Hosting on Google Code</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
 
 <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/6513215159156155175/css/ph_core.css">
 
 <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/6513215159156155175/css/ph_detail.css" >
 
 
 <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/6513215159156155175/css/d_sb_20080522.css" >
 
 
 
<!--[if IE]>
 <link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/6513215159156155175/css/d_ie.css" >
<![endif]-->
 <style type="text/css">
 .menuIcon.off { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -42px }
 .menuIcon.on { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -28px }
 .menuIcon.down { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 0; }
 </style>
</head>
<body class="t4">
 <script type="text/javascript">
 var _gaq = _gaq || [];
 _gaq.push(
 ['siteTracker._setAccount', 'UA-18071-1'],
 ['siteTracker._trackPageview']);
 
 _gaq.push(
 ['projectTracker._setAccount', 'UA-1942730-2'],
 ['projectTracker._trackPageview']);
 
 (function() {
 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
 (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
 })();
 </script>
 <div id="gaia">
 
 <span>
 
 
 <a href="#" id="projects-dropdown" onclick="return false;"><u>My favorites</u> <small>&#9660;</small></a>
 
 | <a href="https://www.google.com/accounts/ServiceLogin?service=code&amp;ltmpl=phosting&amp;continue=http%3A%2F%2Fcode.google.com%2Fp%2Fjquery-multifile-plugin%2Fsource%2Fbrowse%2Ftrunk%2Fjquery.MetaData.js%3Fr%3D16&amp;followup=http%3A%2F%2Fcode.google.com%2Fp%2Fjquery-multifile-plugin%2Fsource%2Fbrowse%2Ftrunk%2Fjquery.MetaData.js%3Fr%3D16" onclick="_CS_click('/gb/ph/signin');"><u>Sign in</u></a>
 
 </span>

 </div>
 <div class="gbh" style="left: 0pt;"></div>
 <div class="gbh" style="right: 0pt;"></div>
 
 
 <div style="height: 1px"></div>
<!--[if IE 6]>
<div style="text-align:center;">
Support browsers that contribute to open source, try <a href="http://www.firefox.com">Firefox</a> or <a href="http://www.google.com/chrome">Google Chrome</a>.
</div>
<![endif]-->



 <table style="padding:0px; margin: 20px 0px 0px 0px; width:100%" cellpadding="0" cellspacing="0">
 <tr style="height: 58px;">
 
 <td style="width: 55px; text-align:center;">
 <a href="/p/jquery-multifile-plugin/">
 
 
 <img src="http://www.gstatic.com/codesite/ph/images/defaultlogo.png" alt="Logo">
 
 
 </a>
 </td>
 
 <td style="padding-left: 0.5em">
 
 <div id="pname" style="margin: 0px 0px -3px 0px">
 <a href="/p/jquery-multifile-plugin/" style="text-decoration:none; color:#000">jquery-multifile-plugin</a>
 
 </div>
 <div id="psum">
 <i><a id="project_summary_link" href="/p/jquery-multifile-plugin/" style="text-decoration:none; color:#000">jQuery Multiple File Upload Plugin</a></i>
 </div>
 
 </td>
 <td style="white-space:nowrap;text-align:right">
 <form action="/hosting/search">
 <input size="30" name="q" value="">
 <input type="submit" name="projectsearch" value="Search projects" >
 </form>
 </tr>
 </table>


 
<table id="mt" cellspacing="0" cellpadding="0" width="100%" border="0">
 <tr>
 <th onclick="if (!cancelBubble) _go('/p/jquery-multifile-plugin/');">
 <div class="tab inactive">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <a onclick="cancelBubble=true;" href="/p/jquery-multifile-plugin/">Project&nbsp;Home</a>
 </div>
 </div>
 </th><td>&nbsp;&nbsp;</td>
 
 
 
 
 
 
 
 
 <th onclick="if (!cancelBubble) _go('/p/jquery-multifile-plugin/issues/list');">
 <div class="tab inactive">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <a onclick="cancelBubble=true;" href="/p/jquery-multifile-plugin/issues/list">Issues</a>
 </div>
 </div>
 </th><td>&nbsp;&nbsp;</td>
 
 
 
 
 
 <th onclick="if (!cancelBubble) _go('/p/jquery-multifile-plugin/source/checkout');">
 <div class="tab active">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <a onclick="cancelBubble=true;" href="/p/jquery-multifile-plugin/source/checkout">Source</a>
 </div>
 </div>
 </th><td>&nbsp;&nbsp;</td>
 
 
 <td width="100%">&nbsp;</td>
 </tr>
</table>
<table cellspacing="0" cellpadding="0" width="100%" align="center" border="0" class="st">
 <tr>
 
 
 
 
 
 
 <td>
 <div class="st2">
 <div class="isf">
 
 
 
 <span class="inst1"><a href="/p/jquery-multifile-plugin/source/checkout">Checkout</a></span> |
 <span class="inst2"><a href="/p/jquery-multifile-plugin/source/browse/">Browse</a></span> |
 <span class="inst3"><a href="/p/jquery-multifile-plugin/source/list">Changes</a></span> |
 
 <form action="http://www.google.com/codesearch" method="get" style="display:inline"
 onsubmit="document.getElementById('codesearchq').value = document.getElementById('origq').value + ' package:http://jquery-multifile-plugin\\.googlecode\\.com'">
 <input type="hidden" name="q" id="codesearchq" value="">
 <input maxlength="2048" size="38" id="origq" name="origq" value="" title="Google Code Search" style="font-size:92%">&nbsp;<input type="submit" value="Search Trunk" name="btnG" style="font-size:92%">
 
 
 
 </form>
 </div>
</div>

 </td>
 
 
 
 <td height="4" align="right" valign="top" class="bevel-right">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 </td>
 </tr>
</table>
<script type="text/javascript">
 var cancelBubble = false;
 function _go(url) { document.location = url; }
</script>


<div id="maincol"
 
>

 
<!-- IE -->




<div class="expand">


<style type="text/css">
 #file_flipper { display: inline; float: right; white-space: nowrap; }
 #file_flipper.hidden { display: none; }
 #file_flipper .pagelink { color: #0000CC; text-decoration: underline; }
 #file_flipper #visiblefiles { padding-left: 0.5em; padding-right: 0.5em; }
</style>
<div id="nav_and_rev" class="heading">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner" id="bub">
 <div class="bub-top">
 <div class="pagination" style="margin-left: 2em">
 <table cellpadding="0" cellspacing="0" class="flipper">
 <tbody>
 <tr>
 
 <td>
 <ul class="leftside">
 
 <li><a href="/p/jquery-multifile-plugin/source/browse/trunk/jquery.MetaData.js?r=2" title="Previous">&lsaquo;r2</a></li>
 
 </ul>
 </td>
 
 <td><b>r16</b></td>
 
 </tr>
 </tbody>
 </table>
 </div>
 
 <div class="" style="vertical-align: top">
 <div class="src_crumbs src_nav">
 <strong class="src_nav">Source path:&nbsp;</strong>
 <span id="crumb_root">
 
 <a href="/p/jquery-multifile-plugin/source/browse/?r=16">svn</a>/&nbsp;</span>
 <span id="crumb_links" class="ifClosed"><a href="/p/jquery-multifile-plugin/source/browse/trunk/?r=16">trunk</a><span class="sp">/&nbsp;</span>jquery.MetaData.js</span>
 
 
 </div>
 
 </div>
 <div style="clear:both"></div>
 </div>
 </div>
</div>

<style type="text/css">
 
  tr.inline_comment {
 background: #fff;
 vertical-align: top;
 }
 div.draft, div.published {
 padding: .3em;
 border: 1px solid #999; 
 margin-bottom: .1em;
 font-family: arial, sans-serif;
 max-width: 60em;
 }
 div.draft {
 background: #ffa;
 } 
 div.published {
 background: #e5ecf9;
 }
 div.published .body, div.draft .body {
 padding: .5em .1em .1em .1em;
 max-width: 60em;
 white-space: pre-wrap;
 white-space: -moz-pre-wrap;
 white-space: -pre-wrap;
 white-space: -o-pre-wrap;
 word-wrap: break-word;
 }
 div.draft .actions {
 margin-left: 1em;
 font-size: 90%;
 }
 div.draft form {
 padding: .5em .5em .5em 0;
 }
 div.draft textarea, div.published textarea {
 width: 95%;
 height: 10em;
 font-family: arial, sans-serif;
 margin-bottom: .5em;
 }


 
 .nocursor, .nocursor td, .cursor_hidden, .cursor_hidden td {
 background-color: white;
 height: 2px;
 }
 .cursor, .cursor td {
 background-color: darkblue;
 height: 2px;
 display: '';
 }

</style>
<div class="fc">
 


<table class="opened" id="review_comment_area"><tr>
<td id="nums">
<pre><table width="100%"><tr class="nocursor"><td></td></tr></table></pre>

<pre><table width="100%"><tr id="gr_svn16_1"><td id="1"><a href="#1">1</a></td></tr
><tr id="gr_svn16_2"><td id="2"><a href="#2">2</a></td></tr
><tr id="gr_svn16_3"><td id="3"><a href="#3">3</a></td></tr
><tr id="gr_svn16_4"><td id="4"><a href="#4">4</a></td></tr
><tr id="gr_svn16_5"><td id="5"><a href="#5">5</a></td></tr
><tr id="gr_svn16_6"><td id="6"><a href="#6">6</a></td></tr
><tr id="gr_svn16_7"><td id="7"><a href="#7">7</a></td></tr
><tr id="gr_svn16_8"><td id="8"><a href="#8">8</a></td></tr
><tr id="gr_svn16_9"><td id="9"><a href="#9">9</a></td></tr
><tr id="gr_svn16_10"><td id="10"><a href="#10">10</a></td></tr
><tr id="gr_svn16_11"><td id="11"><a href="#11">11</a></td></tr
><tr id="gr_svn16_12"><td id="12"><a href="#12">12</a></td></tr
><tr id="gr_svn16_13"><td id="13"><a href="#13">13</a></td></tr
><tr id="gr_svn16_14"><td id="14"><a href="#14">14</a></td></tr
><tr id="gr_svn16_15"><td id="15"><a href="#15">15</a></td></tr
><tr id="gr_svn16_16"><td id="16"><a href="#16">16</a></td></tr
><tr id="gr_svn16_17"><td id="17"><a href="#17">17</a></td></tr
><tr id="gr_svn16_18"><td id="18"><a href="#18">18</a></td></tr
><tr id="gr_svn16_19"><td id="19"><a href="#19">19</a></td></tr
><tr id="gr_svn16_20"><td id="20"><a href="#20">20</a></td></tr
><tr id="gr_svn16_21"><td id="21"><a href="#21">21</a></td></tr
><tr id="gr_svn16_22"><td id="22"><a href="#22">22</a></td></tr
><tr id="gr_svn16_23"><td id="23"><a href="#23">23</a></td></tr
><tr id="gr_svn16_24"><td id="24"><a href="#24">24</a></td></tr
><tr id="gr_svn16_25"><td id="25"><a href="#25">25</a></td></tr
><tr id="gr_svn16_26"><td id="26"><a href="#26">26</a></td></tr
><tr id="gr_svn16_27"><td id="27"><a href="#27">27</a></td></tr
><tr id="gr_svn16_28"><td id="28"><a href="#28">28</a></td></tr
><tr id="gr_svn16_29"><td id="29"><a href="#29">29</a></td></tr
><tr id="gr_svn16_30"><td id="30"><a href="#30">30</a></td></tr
><tr id="gr_svn16_31"><td id="31"><a href="#31">31</a></td></tr
><tr id="gr_svn16_32"><td id="32"><a href="#32">32</a></td></tr
><tr id="gr_svn16_33"><td id="33"><a href="#33">33</a></td></tr
><tr id="gr_svn16_34"><td id="34"><a href="#34">34</a></td></tr
><tr id="gr_svn16_35"><td id="35"><a href="#35">35</a></td></tr
><tr id="gr_svn16_36"><td id="36"><a href="#36">36</a></td></tr
><tr id="gr_svn16_37"><td id="37"><a href="#37">37</a></td></tr
><tr id="gr_svn16_38"><td id="38"><a href="#38">38</a></td></tr
><tr id="gr_svn16_39"><td id="39"><a href="#39">39</a></td></tr
><tr id="gr_svn16_40"><td id="40"><a href="#40">40</a></td></tr
><tr id="gr_svn16_41"><td id="41"><a href="#41">41</a></td></tr
><tr id="gr_svn16_42"><td id="42"><a href="#42">42</a></td></tr
><tr id="gr_svn16_43"><td id="43"><a href="#43">43</a></td></tr
><tr id="gr_svn16_44"><td id="44"><a href="#44">44</a></td></tr
><tr id="gr_svn16_45"><td id="45"><a href="#45">45</a></td></tr
><tr id="gr_svn16_46"><td id="46"><a href="#46">46</a></td></tr
><tr id="gr_svn16_47"><td id="47"><a href="#47">47</a></td></tr
><tr id="gr_svn16_48"><td id="48"><a href="#48">48</a></td></tr
><tr id="gr_svn16_49"><td id="49"><a href="#49">49</a></td></tr
><tr id="gr_svn16_50"><td id="50"><a href="#50">50</a></td></tr
><tr id="gr_svn16_51"><td id="51"><a href="#51">51</a></td></tr
><tr id="gr_svn16_52"><td id="52"><a href="#52">52</a></td></tr
><tr id="gr_svn16_53"><td id="53"><a href="#53">53</a></td></tr
><tr id="gr_svn16_54"><td id="54"><a href="#54">54</a></td></tr
><tr id="gr_svn16_55"><td id="55"><a href="#55">55</a></td></tr
><tr id="gr_svn16_56"><td id="56"><a href="#56">56</a></td></tr
><tr id="gr_svn16_57"><td id="57"><a href="#57">57</a></td></tr
><tr id="gr_svn16_58"><td id="58"><a href="#58">58</a></td></tr
><tr id="gr_svn16_59"><td id="59"><a href="#59">59</a></td></tr
><tr id="gr_svn16_60"><td id="60"><a href="#60">60</a></td></tr
><tr id="gr_svn16_61"><td id="61"><a href="#61">61</a></td></tr
><tr id="gr_svn16_62"><td id="62"><a href="#62">62</a></td></tr
><tr id="gr_svn16_63"><td id="63"><a href="#63">63</a></td></tr
><tr id="gr_svn16_64"><td id="64"><a href="#64">64</a></td></tr
><tr id="gr_svn16_65"><td id="65"><a href="#65">65</a></td></tr
><tr id="gr_svn16_66"><td id="66"><a href="#66">66</a></td></tr
><tr id="gr_svn16_67"><td id="67"><a href="#67">67</a></td></tr
><tr id="gr_svn16_68"><td id="68"><a href="#68">68</a></td></tr
><tr id="gr_svn16_69"><td id="69"><a href="#69">69</a></td></tr
><tr id="gr_svn16_70"><td id="70"><a href="#70">70</a></td></tr
><tr id="gr_svn16_71"><td id="71"><a href="#71">71</a></td></tr
><tr id="gr_svn16_72"><td id="72"><a href="#72">72</a></td></tr
><tr id="gr_svn16_73"><td id="73"><a href="#73">73</a></td></tr
><tr id="gr_svn16_74"><td id="74"><a href="#74">74</a></td></tr
><tr id="gr_svn16_75"><td id="75"><a href="#75">75</a></td></tr
><tr id="gr_svn16_76"><td id="76"><a href="#76">76</a></td></tr
><tr id="gr_svn16_77"><td id="77"><a href="#77">77</a></td></tr
><tr id="gr_svn16_78"><td id="78"><a href="#78">78</a></td></tr
><tr id="gr_svn16_79"><td id="79"><a href="#79">79</a></td></tr
><tr id="gr_svn16_80"><td id="80"><a href="#80">80</a></td></tr
><tr id="gr_svn16_81"><td id="81"><a href="#81">81</a></td></tr
><tr id="gr_svn16_82"><td id="82"><a href="#82">82</a></td></tr
><tr id="gr_svn16_83"><td id="83"><a href="#83">83</a></td></tr
><tr id="gr_svn16_84"><td id="84"><a href="#84">84</a></td></tr
><tr id="gr_svn16_85"><td id="85"><a href="#85">85</a></td></tr
><tr id="gr_svn16_86"><td id="86"><a href="#86">86</a></td></tr
><tr id="gr_svn16_87"><td id="87"><a href="#87">87</a></td></tr
><tr id="gr_svn16_88"><td id="88"><a href="#88">88</a></td></tr
><tr id="gr_svn16_89"><td id="89"><a href="#89">89</a></td></tr
><tr id="gr_svn16_90"><td id="90"><a href="#90">90</a></td></tr
><tr id="gr_svn16_91"><td id="91"><a href="#91">91</a></td></tr
><tr id="gr_svn16_92"><td id="92"><a href="#92">92</a></td></tr
><tr id="gr_svn16_93"><td id="93"><a href="#93">93</a></td></tr
><tr id="gr_svn16_94"><td id="94"><a href="#94">94</a></td></tr
><tr id="gr_svn16_95"><td id="95"><a href="#95">95</a></td></tr
><tr id="gr_svn16_96"><td id="96"><a href="#96">96</a></td></tr
><tr id="gr_svn16_97"><td id="97"><a href="#97">97</a></td></tr
><tr id="gr_svn16_98"><td id="98"><a href="#98">98</a></td></tr
><tr id="gr_svn16_99"><td id="99"><a href="#99">99</a></td></tr
><tr id="gr_svn16_100"><td id="100"><a href="#100">100</a></td></tr
><tr id="gr_svn16_101"><td id="101"><a href="#101">101</a></td></tr
><tr id="gr_svn16_102"><td id="102"><a href="#102">102</a></td></tr
><tr id="gr_svn16_103"><td id="103"><a href="#103">103</a></td></tr
><tr id="gr_svn16_104"><td id="104"><a href="#104">104</a></td></tr
><tr id="gr_svn16_105"><td id="105"><a href="#105">105</a></td></tr
><tr id="gr_svn16_106"><td id="106"><a href="#106">106</a></td></tr
><tr id="gr_svn16_107"><td id="107"><a href="#107">107</a></td></tr
><tr id="gr_svn16_108"><td id="108"><a href="#108">108</a></td></tr
><tr id="gr_svn16_109"><td id="109"><a href="#109">109</a></td></tr
><tr id="gr_svn16_110"><td id="110"><a href="#110">110</a></td></tr
><tr id="gr_svn16_111"><td id="111"><a href="#111">111</a></td></tr
><tr id="gr_svn16_112"><td id="112"><a href="#112">112</a></td></tr
><tr id="gr_svn16_113"><td id="113"><a href="#113">113</a></td></tr
><tr id="gr_svn16_114"><td id="114"><a href="#114">114</a></td></tr
><tr id="gr_svn16_115"><td id="115"><a href="#115">115</a></td></tr
><tr id="gr_svn16_116"><td id="116"><a href="#116">116</a></td></tr
><tr id="gr_svn16_117"><td id="117"><a href="#117">117</a></td></tr
><tr id="gr_svn16_118"><td id="118"><a href="#118">118</a></td></tr
><tr id="gr_svn16_119"><td id="119"><a href="#119">119</a></td></tr
></table></pre>

<pre><table width="100%"><tr class="nocursor"><td></td></tr></table></pre>
</td>
<td id="lines">
<pre class="prettyprint"><table width="100%"><tr class="cursor_stop cursor_hidden"><td></td></tr></table></pre>

<pre class="prettyprint lang-js"><table><tr
id=sl_svn16_1><td class="source">/*�örn Zaefferer, Paul McLanahan<br></td></tr
><tr
id=sl_svn16_2><td class="source"> *<br></td></tr
><tr
id=sl_svn16_3><td class="source"> * Dual licensed under the MIT and GPL licenses:<br></td></tr
><tr
id=sl_svn16_4><td class="source"> *   http://www.opensource.org/licenses/mit-license.php<br></td></tr
><tr
id=sl_svn16_5><td class="source"> *   http://www.gnu.org/licenses/gpl.html<br></td></tr
><tr
id=sl_svn16_6><td class="source"> *<br></td></tr
><tr
id=sl_svn16_7><td class="source"> * Revision: $Id$<br></td></tr
><tr
id=sl_svn16_8><td class="source"> *<br></td></tr
><tr
id=sl_svn16_9><td class="source"> */<br></td></tr
><tr
id=sl_svn16_10><td class="source"><br></td></tr
><tr
id=sl_svn16_11><td class="source">/**<br></td></tr
><tr
id=sl_svn16_12><td class="source"> * Sets the type of metadata to use. Metadata is encoded in JSON, and each property<br></td></tr
><tr
id=sl_svn16_13><td class="source"> * in the JSON will become a property of the element itself.<br></td></tr
><tr
id=sl_svn16_14><td class="source"> *<br></td></tr
><tr
id=sl_svn16_15><td class="source"> * There are three supported types of metadata storage:<br></td></tr
><tr
id=sl_svn16_16><td class="source"> *<br></td></tr
><tr
id=sl_svn16_17><td class="source"> *   attr:  Inside an attribute. The name parameter indicates *which* attribute.<br></td></tr
><tr
id=sl_svn16_18><td class="source"> *          <br></td></tr
><tr
id=sl_svn16_19><td class="source"> *   class: Inside the class attribute, wrapped in curly braces: { }<br></td></tr
><tr
id=sl_svn16_20><td class="source"> *   <br></td></tr
><tr
id=sl_svn16_21><td class="source"> *   elem:  Inside a child element (e.g. a script tag). The<br></td></tr
><tr
id=sl_svn16_22><td class="source"> *          name parameter indicates *which* element.<br></td></tr
><tr
id=sl_svn16_23><td class="source"> *          <br></td></tr
><tr
id=sl_svn16_24><td class="source"> * The metadata for an element is loaded the first time the element is accessed via jQuery.<br></td></tr
><tr
id=sl_svn16_25><td class="source"> *<br></td></tr
><tr
id=sl_svn16_26><td class="source"> * As a result, you can define the metadata type, use $(expr) to load the metadata into the elements<br></td></tr
><tr
id=sl_svn16_27><td class="source"> * matched by expr, then redefine the metadata type and run another $(expr) for other elements.<br></td></tr
><tr
id=sl_svn16_28><td class="source"> * <br></td></tr
><tr
id=sl_svn16_29><td class="source"> * @name $.metadata.setType<br></td></tr
><tr
id=sl_svn16_30><td class="source"> *<br></td></tr
><tr
id=sl_svn16_31><td class="source"> * @example &lt;p id=&quot;one&quot; class=&quot;some_class {item_id: 1, item_label: &#39;Label&#39;}&quot;&gt;This is a p&lt;/p&gt;<br></td></tr
><tr
id=sl_svn16_32><td class="source"> * @before $.metadata.setType(&quot;class&quot;)<br></td></tr
><tr
id=sl_svn16_33><td class="source"> * @after $(&quot;#one&quot;).metadata().item_id == 1; $(&quot;#one&quot;).metadata().item_label == &quot;Label&quot;<br></td></tr
><tr
id=sl_svn16_34><td class="source"> * @desc Reads metadata from the class attribute<br></td></tr
><tr
id=sl_svn16_35><td class="source"> * <br></td></tr
><tr
id=sl_svn16_36><td class="source"> * @example &lt;p id=&quot;one&quot; class=&quot;some_class&quot; data=&quot;{item_id: 1, item_label: &#39;Label&#39;}&quot;&gt;This is a p&lt;/p&gt;<br></td></tr
><tr
id=sl_svn16_37><td class="source"> * @before $.metadata.setType(&quot;attr&quot;, &quot;data&quot;)<br></td></tr
><tr
id=sl_svn16_38><td class="source"> * @after $(&quot;#one&quot;).metadata().item_id == 1; $(&quot;#one&quot;).metadata().item_label == &quot;Label&quot;<br></td></tr
><tr
id=sl_svn16_39><td class="source"> * @desc Reads metadata from a &quot;data&quot; attribute<br></td></tr
><tr
id=sl_svn16_40><td class="source"> * <br></td></tr
><tr
id=sl_svn16_41><td class="source"> * @example &lt;p id=&quot;one&quot; class=&quot;some_class&quot;&gt;&lt;script&gt;{item_id: 1, item_label: &#39;Label&#39;}&lt;/script&gt;This is a p&lt;/p&gt;<br></td></tr
><tr
id=sl_svn16_42><td class="source"> * @before $.metadata.setType(&quot;elem&quot;, &quot;script&quot;)<br></td></tr
><tr
id=sl_svn16_43><td class="source"> * @after $(&quot;#one&quot;).metadata().item_id == 1; $(&quot;#one&quot;).metadata().item_label == &quot;Label&quot;<br></td></tr
><tr
id=sl_svn16_44><td class="source"> * @desc Reads metadata from a nested script element<br></td></tr
><tr
id=sl_svn16_45><td class="source"> * <br></td></tr
><tr
id=sl_svn16_46><td class="source"> * @param String type The encoding type<br></td></tr
><tr
id=sl_svn16_47><td class="source"> * @param String name The name of the attribute to be used to get metadata (optional)<br></td></tr
><tr
id=sl_svn16_48><td class="source"> * @cat Plugins/Metadata<br></td></tr
><tr
id=sl_svn16_49><td class="source"> * @descr Sets the type of encoding to be used when loading metadata for the first time<br></td></tr
><tr
id=sl_svn16_50><td class="source"> * @type undefined<br></td></tr
><tr
id=sl_svn16_51><td class="source"> * @see metadata()<br></td></tr
><tr
id=sl_svn16_52><td class="source"> */<br></td></tr
><tr
id=sl_svn16_53><td class="source"><br></td></tr
><tr
id=sl_svn16_54><td class="source">(function($) {<br></td></tr
><tr
id=sl_svn16_55><td class="source"><br></td></tr
><tr
id=sl_svn16_56><td class="source">$.extend({<br></td></tr
><tr
id=sl_svn16_57><td class="source">	metadata : {<br></td></tr
><tr
id=sl_svn16_58><td class="source">		defaults : {<br></td></tr
><tr
id=sl_svn16_59><td class="source">			type: &#39;class&#39;,<br></td></tr
><tr
id=sl_svn16_60><td class="source">			name: &#39;metadata&#39;,<br></td></tr
><tr
id=sl_svn16_61><td class="source">			cre: /({.*})/,<br></td></tr
><tr
id=sl_svn16_62><td class="source">			single: &#39;metadata&#39;<br></td></tr
><tr
id=sl_svn16_63><td class="source">		},<br></td></tr
><tr
id=sl_svn16_64><td class="source">		setType: function( type, name ){<br></td></tr
><tr
id=sl_svn16_65><td class="source">			this.defaults.type = type;<br></td></tr
><tr
id=sl_svn16_66><td class="source">			this.defaults.name = name;<br></td></tr
><tr
id=sl_svn16_67><td class="source">		},<br></td></tr
><tr
id=sl_svn16_68><td class="source">		get: function( elem, opts ){<br></td></tr
><tr
id=sl_svn16_69><td class="source">			var settings = $.extend({},this.defaults,opts);<br></td></tr
><tr
id=sl_svn16_70><td class="source">			// check for empty string in single property<br></td></tr
><tr
id=sl_svn16_71><td class="source">			if ( !settings.single.length ) settings.single = &#39;metadata&#39;;<br></td></tr
><tr
id=sl_svn16_72><td class="source">			<br></td></tr
><tr
id=sl_svn16_73><td class="source">			var data = $.data(elem, settings.single);<br></td></tr
><tr
id=sl_svn16_74><td class="source">			// returned cached data if it already exists<br></td></tr
><tr
id=sl_svn16_75><td class="source">			if ( data ) return data;<br></td></tr
><tr
id=sl_svn16_76><td class="source">			<br></td></tr
><tr
id=sl_svn16_77><td class="source">			data = &quot;{}&quot;;<br></td></tr
><tr
id=sl_svn16_78><td class="source">			<br></td></tr
><tr
id=sl_svn16_79><td class="source">			if ( settings.type == &quot;class&quot; ) {<br></td></tr
><tr
id=sl_svn16_80><td class="source">				var m = settings.cre.exec( elem.className );<br></td></tr
><tr
id=sl_svn16_81><td class="source">				if ( m )<br></td></tr
><tr
id=sl_svn16_82><td class="source">					data = m[1];<br></td></tr
><tr
id=sl_svn16_83><td class="source">			} else if ( settings.type == &quot;elem&quot; ) {<br></td></tr
><tr
id=sl_svn16_84><td class="source">				if( !elem.getElementsByTagName )<br></td></tr
><tr
id=sl_svn16_85><td class="source">					return undefined;<br></td></tr
><tr
id=sl_svn16_86><td class="source">				var e = elem.getElementsByTagName(settings.name);<br></td></tr
><tr
id=sl_svn16_87><td class="source">				if ( e.length )<br></td></tr
><tr
id=sl_svn16_88><td class="source">					data = $.trim(e[0].innerHTML);<br></td></tr
><tr
id=sl_svn16_89><td class="source">			} else if ( elem.getAttribute != undefined ) {<br></td></tr
><tr
id=sl_svn16_90><td class="source">				var attr = elem.getAttribute( settings.name );<br></td></tr
><tr
id=sl_svn16_91><td class="source">				if ( attr )<br></td></tr
><tr
id=sl_svn16_92><td class="source">					data = attr;<br></td></tr
><tr
id=sl_svn16_93><td class="source">			}<br></td></tr
><tr
id=sl_svn16_94><td class="source">			<br></td></tr
><tr
id=sl_svn16_95><td class="source">			if ( data.indexOf( &#39;{&#39; ) &lt;0 )<br></td></tr
><tr
id=sl_svn16_96><td class="source">			data = &quot;{&quot; + data + &quot;}&quot;;<br></td></tr
><tr
id=sl_svn16_97><td class="source">			<br></td></tr
><tr
id=sl_svn16_98><td class="source">			data = eval(&quot;(&quot; + data + &quot;)&quot;);<br></td></tr
><tr
id=sl_svn16_99><td class="source">			<br></td></tr
><tr
id=sl_svn16_100><td class="source">			$.data( elem, settings.single, data );<br></td></tr
><tr
id=sl_svn16_101><td class="source">			return data;<br></td></tr
><tr
id=sl_svn16_102><td class="source">		}<br></td></tr
><tr
id=sl_svn16_103><td class="source">	}<br></td></tr
><tr
id=sl_svn16_104><td class="source">});<br></td></tr
><tr
id=sl_svn16_105><td class="source"><br></td></tr
><tr
id=sl_svn16_106><td class="source">/**<br></td></tr
><tr
id=sl_svn16_107><td class="source"> * Returns the metadata object for the first member of the jQuery object.<br></td></tr
><tr
id=sl_svn16_108><td class="source"> *<br></td></tr
><tr
id=sl_svn16_109><td class="source"> * @name metadata<br></td></tr
><tr
id=sl_svn16_110><td class="source"> * @descr Returns element&#39;s metadata object<br></td></tr
><tr
id=sl_svn16_111><td class="source"> * @param Object opts An object contianing settings to override the defaults<br></td></tr
><tr
id=sl_svn16_112><td class="source"> * @type jQuery<br></td></tr
><tr
id=sl_svn16_113><td class="source"> * @cat Plugins/Metadata<br></td></tr
><tr
id=sl_svn16_114><td class="source"> */<br></td></tr
><tr
id=sl_svn16_115><td class="source">$.fn.metadata = function( opts ){<br></td></tr
><tr
id=sl_svn16_116><td class="source">	return $.metadata.get( this[0], opts );<br></td></tr
><tr
id=sl_svn16_117><td class="source">};<br></td></tr
><tr
id=sl_svn16_118><td class="source"><br></td></tr
><tr
id=sl_svn16_119><td class="source">})(jQuery);<br></td></tr
></table></pre>

<pre class="prettyprint"><table width="100%"><tr class="cursor_stop cursor_hidden"><td></td></tr></table></pre>
</td>
</tr></table>



 <div id="log">
 <div style="text-align:right">
 <a class="ifCollapse" href="#" onclick="_toggleMeta('', 'p', 'jquery-multifile-plugin', this)">Show details</a>
 <a class="ifExpand" href="#" onclick="_toggleMeta('', 'p', 'jquery-multifile-plugin', this)">Hide details</a>
 </div>
 <div class="ifExpand">
 
 <div class="pmeta_bubble_bg" style="border:1px solid white">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <div id="changelog">
 <p>Change log</p>
 <div>
 <a href="/p/jquery-multifile-plugin/source/detail?spec=svn16&r=16">r16</a>
 by diego.alto
 on Apr 02, 2009
 &nbsp; <a href="/p/jquery-multifile-plugin/source/diff?spec=svn16&r=16&amp;format=side&amp;path=/trunk/jquery.MetaData.js&amp;old_path=/trunk/jquery.MetaData.js&amp;old=2">Diff</a>
 </div>
 <pre>[No log message]</pre>
 </div>
 
 
 
 
 
 
 <script type="text/javascript">
 var detail_url = '/p/jquery-multifile-plugin/source/detail?r=16&spec=svn16';
 var publish_url = '/p/jquery-multifile-plugin/source/detail?r=16&spec=svn16#publish';
 // describe the paths of this revision in javascript.
 var changed_paths = [];
 var changed_urls = [];
 
 changed_paths.push('/trunk/index.html');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/index.html?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/jquery.MetaData.js');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/jquery.MetaData.js?r=16&spec=svn16');
 
 var selected_path = '/trunk/jquery.MetaData.js';
 
 
 changed_paths.push('/trunk/jquery.MultiFile.js');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/jquery.MultiFile.js?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/jquery.MultiFile.pack.js');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/jquery.MultiFile.pack.js?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/jquery.form.js');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/jquery.form.js?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/jquery.js');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/jquery.js?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/multiple-file-upload.zip');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/multiple-file-upload.zip?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/test.asp');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/test.asp?r=16&spec=svn16');
 
 
 changed_paths.push('/trunk/test.html');
 changed_urls.push('/p/jquery-multifile-plugin/source/browse/trunk/test.html?r=16&spec=svn16');
 
 
 function getCurrentPageIndex() {
 for (var i = 0; i < changed_paths.length; i++) {
 if (selected_path == changed_paths[i]) {
 return i;
 }
 }
 }
 function getNextPage() {
 var i = getCurrentPageIndex();
 if (i < changed_paths.length - 1) {
 return changed_urls[i + 1];
 }
 return null;
 }
 function getPreviousPage() {
 var i = getCurrentPageIndex();
 if (i > 0) {
 return changed_urls[i - 1];
 }
 return null;
 }
 function gotoNextPage() {
 var page = getNextPage();
 if (!page) {
 page = detail_url;
 }
 window.location = page;
 }
 function gotoPreviousPage() {
 var page = getPreviousPage();
 if (!page) {
 page = detail_url;
 }
 window.location = page;
 }
 function gotoDetailPage() {
 window.location = detail_url;
 }
 function gotoPublishPage() {
 window.location = publish_url;
 }
</script>
 
 <style type="text/css">
 #review_nav {
 border-top: 3px solid white;
 padding-top: 6px;
 margin-top: 1em;
 }
 #review_nav td {
 vertical-align: middle;
 }
 #review_nav select {
 margin: .5em 0;
 }
 </style>
 <div id="review_nav">
 <table><tr><td>Go to:&nbsp;</td><td>
 <select name="files_in_rev" onchange="window.location=this.value">
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/index.html?r=16&amp;spec=svn16"
 
 >/trunk/index.html</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/jquery.MetaData.js?r=16&amp;spec=svn16"
 selected="selected"
 >/trunk/jquery.MetaData.js</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/jquery.MultiFile.js?r=16&amp;spec=svn16"
 
 >/trunk/jquery.MultiFile.js</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/jquery.MultiFile.pack.js?r=16&amp;spec=svn16"
 
 >/trunk/jquery.MultiFile.pack.js</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/jquery.form.js?r=16&amp;spec=svn16"
 
 >/trunk/jquery.form.js</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/jquery.js?r=16&amp;spec=svn16"
 
 >/trunk/jquery.js</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/multiple-file-upload.zip?r=16&amp;spec=svn16"
 
 >/trunk/multiple-file-upload.zip</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/test.asp?r=16&amp;spec=svn16"
 
 >/trunk/test.asp</option>
 
 <option value="/p/jquery-multifile-plugin/source/browse/trunk/test.html?r=16&amp;spec=svn16"
 
 >/trunk/test.html</option>
 
 </select>
 </td></tr></table>
 
 
 




 <div style="white-space:nowrap">
 
 <a href="https://www.google.com/accounts/ServiceLogin?service=code&amp;ltmpl=phosting&amp;continue=http%3A%2F%2Fcode.google.com%2Fp%2Fjquery-multifile-plugin%2Fsource%2Fbrowse%2Ftrunk%2Fjquery.MetaData.js%3Fr%3D16&amp;followup=http%3A%2F%2Fcode.google.com%2Fp%2Fjquery-multifile-plugin%2Fsource%2Fbrowse%2Ftrunk%2Fjquery.MetaData.js%3Fr%3D16"
 >Sign in</a> to write a code review</div>


 
 </div>
 
 
 </div>
 <div class="round1"></div>
 <div class="round2"></div>
 <div class="round4"></div>
 </div>
 <div class="pmeta_bubble_bg" style="border:1px solid white">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <div id="older_bubble">
 <p>Older revisions</p>
 
 
 <div class="closed" style="margin-bottom:3px;" >
 <img class="ifClosed" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/plus.gif" >
 <img class="ifOpened" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/minus.gif" >
 <a href="/p/jquery-multifile-plugin/source/detail?spec=svn16&r=2">r2</a>
 by diego.alto
 on Aug 13, 2008
 &nbsp; <a href="/p/jquery-multifile-plugin/source/diff?spec=svn16&r=2&amp;format=side&amp;path=/trunk/jquery.MetaData.js&amp;old_path=/trunk/jquery.MetaData.js&amp;old=0">Diff</a>
 <br>
 <pre class="ifOpened">[No log message]</pre>
 </div>
 
 
 <a href="/p/jquery-multifile-plugin/source/list?path=/trunk/jquery.MetaData.js&start=16">All revisions of this file</a>
 </div>
 </div>
 <div class="round1"></div>
 <div class="round2"></div>
 <div class="round4"></div>
 </div>
 <div class="pmeta_bubble_bg" style="border:1px solid white">
 <div class="round4"></div>
 <div class="round2"></div>
 <div class="round1"></div>
 <div class="box-inner">
 <div id="fileinfo_bubble">
 <p>File info</p>
 
 <div>Size: 3777 bytes,
 119 lines</div>
 
 <div><a href="http://jquery-multifile-plugin.googlecode.com/svn-history/r16/trunk/jquery.MetaData.js">View raw file</a></div>
 </div>
 
 <div id="props">
 <p>File properties</p>
 <dl>
 
 <dt>svn:mime-type</dt>
 <dd>text/javascript</dd>
 
 <dt>svn:eol-style</dt>
 <dd>native</dd>
 
 <dt>svn:keywords</dt>
 <dd>Id</dd>
 
 </dl>
 </div>
 
 </div>
 <div class="round1"></div>
 <div class="round2"></div>
 <div class="round4"></div>
 </div>
 </div>
 </div>


</div>
</div>

 <script src="http://www.gstatic.com/codesite/ph/6513215159156155175/js/prettify/prettify.js"></script>

<script type="text/javascript">prettyPrint();</script>

<script src="http://www.gstatic.com/codesite/ph/6513215159156155175/js/source_file_scripts.js"></script>

 <script type="text/javascript" src="http://kibbles.googlecode.com/files/kibbles-1.3.1.comp.js"></script>
 <script type="text/javascript">
 var lastStop = null;
 var initilized = false;
 
 function updateCursor(next, prev) {
 if (prev && prev.element) {
 prev.element.className = 'cursor_stop cursor_hidden';
 }
 if (next && next.element) {
 next.element.className = 'cursor_stop cursor';
 lastStop = next.index;
 }
 }
 
 function pubRevealed(data) {
 updateCursorForCell(data.cellId, 'cursor_stop cursor_hidden');
 if (initilized) {
 reloadCursors();
 }
 }
 
 function draftRevealed(data) {
 updateCursorForCell(data.cellId, 'cursor_stop cursor_hidden');
 if (initilized) {
 reloadCursors();
 }
 }
 
 function draftDestroyed(data) {
 updateCursorForCell(data.cellId, 'nocursor');
 if (initilized) {
 reloadCursors();
 }
 }
 function reloadCursors() {
 kibbles.skipper.reset();
 loadCursors();
 if (lastStop != null) {
 kibbles.skipper.setCurrentStop(lastStop);
 }
 }
 // possibly the simplest way to insert any newly added comments
 // is to update the class of the corresponding cursor row,
 // then refresh the entire list of rows.
 function updateCursorForCell(cellId, className) {
 var cell = document.getElementById(cellId);
 // we have to go two rows back to find the cursor location
 var row = getPreviousElement(cell.parentNode);
 row.className = className;
 }
 // returns the previous element, ignores text nodes.
 function getPreviousElement(e) {
 var element = e.previousSibling;
 if (element.nodeType == 3) {
 element = element.previousSibling;
 }
 if (element && element.tagName) {
 return element;
 }
 }
 function loadCursors() {
 // register our elements with skipper
 var elements = CR_getElements('*', 'cursor_stop');
 var len = elements.length;
 for (var i = 0; i < len; i++) {
 var element = elements[i]; 
 element.className = 'cursor_stop cursor_hidden';
 kibbles.skipper.append(element);
 }
 }
 function toggleComments() {
 CR_toggleCommentDisplay();
 reloadCursors();
 }
 function keysOnLoadHandler() {
 // setup skipper
 kibbles.skipper.addStopListener(
 kibbles.skipper.LISTENER_TYPE.PRE, updateCursor);
 // Set the 'offset' option to return the middle of the client area
 // an option can be a static value, or a callback
 kibbles.skipper.setOption('padding_top', 50);
 // Set the 'offset' option to return the middle of the client area
 // an option can be a static value, or a callback
 kibbles.skipper.setOption('padding_bottom', 100);
 // Register our keys
 kibbles.skipper.addFwdKey("n");
 kibbles.skipper.addRevKey("p");
 kibbles.keys.addKeyPressListener(
 'u', function() { window.location = detail_url; });
 kibbles.keys.addKeyPressListener(
 'r', function() { window.location = detail_url + '#publish'; });
 
 kibbles.keys.addKeyPressListener('j', gotoNextPage);
 kibbles.keys.addKeyPressListener('k', gotoPreviousPage);
 
 
 }
 window.onload = function() {keysOnLoadHandler();};
 </script>


<!-- code review support -->
<script src="http://www.gstatic.com/codesite/ph/6513215159156155175/js/code_review_scripts.js"></script>
<script type="text/javascript">
 
 // the comment form template
 var form = '<div class="draft"><div class="header"><span class="title">Draft comment:</span></div>' +
 '<div class="body"><form onsubmit="return false;"><textarea id="$ID">$BODY</textarea><br>$ACTIONS</form></div>' +
 '</div>';
 // the comment "plate" template used for both draft and published comment "plates".
 var draft_comment = '<div class="draft" ondblclick="$ONDBLCLICK">' +
 '<div class="header"><span class="title">Draft comment:</span><span class="actions">$ACTIONS</span></div>' +
 '<pre id="$ID" class="body">$BODY</pre>' +
 '</div>';
 var published_comment = '<div class="published">' +
 '<div class="header"><span class="title"><a href="$PROFILE_URL">$AUTHOR:</a></span><div>' +
 '<pre id="$ID" class="body">$BODY</pre>' +
 '</div>';

 function showPublishInstructions() {
 var element = document.getElementById('review_instr');
 if (element) {
 element.className = 'opened';
 }
 }
 function revsOnLoadHandler() {
 // register our source container with the commenting code
 var paths = {'svn16': '/trunk/jquery.MetaData.js'}
 CR_setup('', 'p', 'jquery-multifile-plugin', '', 'svn16', paths,
 '', CR_BrowseIntegrationFactory);
 // register our hidden ui elements with the code commenting code ui builder.
 CR_registerLayoutElement('form', form);
 CR_registerLayoutElement('draft_comment', draft_comment);
 CR_registerLayoutElement('published_comment', published_comment);
 
 CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_DRAFT_PLATE, showPublishInstructions);
 
 CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_PUB_PLATE, pubRevealed);
 CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_DRAFT_PLATE, draftRevealed);
 CR_registerActivityListener(CR_ACTIVITY_TYPE.DISCARD_DRAFT_COMMENT, draftDestroyed);
 
 
 
 
 
 
 
 
 
 var initilized = true;
 reloadCursors();
 }
 window.onload = function() {keysOnLoadHandler(); revsOnLoadHandler();};
</script>

<script type="text/javascript" src="http://www.gstatic.com/codesite/ph/6513215159156155175/js/dit_scripts_20081013.js"></script>

 
 
 <script type="text/javascript" src="http://www.gstatic.com/codesite/ph/6513215159156155175/js/core_scripts_20081103.js"></script>
 <script type="text/javascript" src="/js/codesite_product_dictionary_ph.pack.04102009.js"></script>
 </div>
<div id="footer" dir="ltr">
 
 <div class="text">
 
 &copy;2010 Google -
 <a href="/projecthosting/terms.html">Terms</a> -
 <a href="http://www.google.com/privacy.html">Privacy</a> -
 <a href="/p/support/">Project Hosting Help</a>
 
 </div>
</div>

 <div class="hostedBy" style="margin-top: -20px;">
 <span style="vertical-align: top;">Powered by <a href="http://code.google.com/projecthosting/">Google Project Hosting</a></span>
 </div>
 
 


 
 </body>
</html>

