/*
 * Metadata - jQuery plugin for parsing metadata from elements
 *
 * Copyright (c) 2006 John Resig, Yehuda Katz, J�örn Zaefferer, Paul McLanahan
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 * Revision: $Id: jquery.metadata.js 3640 2007-10-11 18:34:38Z pmclanahan $
 *
 */
(function(e){e.extend({metadata:{defaults:{type:"class",name:"metadata",cre:/({.*})/,single:"metadata"},setType:function(a,h){this.defaults.type=a;this.defaults.name=h},get:function(a,h){var b=e.extend({},this.defaults,h);if(!b.single.length)b.single="metadata";var c=e.data(a,b.single);if(c)return c;c="{}";var i=function(d){if(typeof d!="string")return d;return d=eval("("+d+")")};if(b.type=="html5"){var g={};e(a.attributes).each(function(){var d=this.nodeName;if(d.match(/^data-/))d=d.replace(/^data-/, "");else return true;g[d]=i(this.nodeValue)})}else{if(b.type=="class"){var f=b.cre.exec(a.className);if(f)c=f[1]}else if(b.type=="elem"){if(!a.getElementsByTagName)return;f=a.getElementsByTagName(b.name);if(f.length)c=e.trim(f[0].innerHTML)}else if(a.getAttribute!=undefined)if(f=a.getAttribute(b.name))c=f;g=i(c.indexOf("{")<0?"{"+c+"}":c)}e.data(a,b.single,g);return g}}});e.fn.metadata=function(a){return e.metadata.get(this[0],a)}})(jQuery);
