| Current Path : /home/azimutno/www/administrator/components/com_uniform/assets/js/libs/ |
| Current File : /home/azimutno/www/administrator/components/com_uniform/assets/js/libs/jquery.tmpl.js |
(function(a) {
var r = a.fn.domManip,
d = "_tmplitem",
q = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,
b = {},
f = {},
e, p = {
key: 0,
data: {}
},
h = 0,
c = 0,
l = [];
function g(e, d, g, i) {
var c = {
data: i || (d ? d.data : {}),
_wrap: d ? d._wrap : null,
tmpl: null,
parent: d || null,
nodes: [],
calls: u,
nest: w,
wrap: x,
html: v,
update: t
};
e && a.extend(c, e, {
nodes: [],
parent: d
});
if (g) {
c.tmpl = g;
c._ctnt = c._ctnt || c.tmpl(a, c);
c.key = ++h;
(l.length ? f : b)[h] = c
}
return c
}
a.each({
appendTo: "append",
prependTo: "prepend",
insertBefore: "before",
insertAfter: "after",
replaceAll: "replaceWith"
}, function(f, d) {
a.fn[f] = function(n) {
var g = [],
i = a(n),
k, h, m, l, j = this.length === 1 && this[0].parentNode;
e = b || {};
if (j && j.nodeType === 11 && j.childNodes.length === 1 && i.length === 1) {
i[d](this[0]);
g = this
} else {
for (h = 0, m = i.length; h < m; h++) {
c = h;
k = (h > 0 ? this.clone(true) : this).get();
a.fn[d].apply(a(i[h]), k);
g = g.concat(k)
}
c = 0;
g = this.pushStack(g, f, i.selector)
}
l = e;
e = null;
a.tmpl.complete(l);
return g
}
});
a.fn.extend({
tmpl: function(d, c, b) {
return a.tmpl(this[0], d, c, b)
},
tmplItem: function() {
return a.tmplItem(this[0])
},
template: function(b) {
return a.template(b, this[0])
},
domManip: function(d, l, j) {
if (d[0] && d[0].nodeType) {
var f = a.makeArray(arguments),
g = d.length,
i = 0,
h;
while (i < g && !(h = a.data(d[i++], "tmplItem")));
if (g > 1) f[0] = [a.makeArray(d)];
if (h && c) f[2] = function(b) {
a.tmpl.afterManip(this, b, j)
};
r.apply(this, f)
} else r.apply(this, arguments);
c = 0;
!e && a.tmpl.complete(b);
return this
}
});
a.extend({
tmpl: function(d, h, e, c) {
var j, k = !c;
if (k) {
c = p;
d = a.template[d] || a.template(null, d);
f = {}
} else if (!d) {
d = c.tmpl;
b[c.key] = c;
c.nodes = [];
c.wrapped && n(c, c.wrapped);
return a(i(c, null, c.tmpl(a, c)))
}
if (!d) return [];
if (typeof h === "function") h = h.call(c || {});
e && e.wrapped && n(e, e.wrapped);
j = a.isArray(h) ? a.map(h, function(a) {
return a ? g(e, c, d, a) : null
}) : [g(e, c, d, h)];
return k ? a(i(c, null, j)) : j
},
tmplItem: function(b) {
var c;
if (b instanceof a) b = b[0];
while (b && b.nodeType === 1 && !(c = a.data(b, "tmplItem")) && (b = b.parentNode));
return c || p
},
template: function(c, b) {
if (b) {
if (typeof b === "string") b = o(b);
else if (b instanceof a) b = b[0] || {};
if (b.nodeType) b = a.data(b, "tmpl") || a.data(b, "tmpl", o(b.innerHTML));
return typeof c === "string" ? (a.template[c] = b) : b
}
return c ? typeof c !== "string" ? a.template(null, c) : a.template[c] || a.template(null, q.test(c) ? c : a(c)) : null
},
encode: function(a) {
return ("" + a).split("<").join("<").split(">").join(">").split('"').join(""").split("'").join("'")
}
});
a.extend(a.tmpl, {
tag: {
tmpl: {
_default: {
$2: "null"
},
open: "if($notnull_1){_=_.concat($item.nest($1,$2));}"
},
wrap: {
_default: {
$2: "null"
},
open: "$item.calls(_,$1,$2);_=[];",
close: "call=$item.calls();_=call._.concat($item.wrap(call,_));"
},
each: {
_default: {
$2: "$index, $value"
},
open: "if($notnull_1){$.each($1a,function($2){with(this){",
close: "}});}"
},
"if": {
open: "if(($notnull_1) && $1a){",
close: "}"
},
"else": {
_default: {
$1: "true"
},
open: "}else if(($notnull_1) && $1a){"
},
html: {
open: "if($notnull_1){_.push($1a);}"
},
"=": {
_default: {
$1: "$data"
},
open: "if($notnull_1){_.push($.encode($1a));}"
},
"+": {
_default: {
$1: "$data"
},
open: "if($notnull_1){_.push($1a);}"
},
"!": {
open: ""
}
},
complete: function() {
b = {}
},
afterManip: function(f, b, d) {
var e = b.nodeType === 11 ? a.makeArray(b.childNodes) : b.nodeType === 1 ? [b] : [];
d.call(f, b);
m(e);
c++
}
});
function i(e, g, f) {
var b, c = f ? a.map(f, function(a) {
return typeof a === "string" ? e.key ? a.replace(/(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g, "$1 " + d + '="' + e.key + '" $2') : a : i(a, e, a._ctnt)
}) : e;
if (g) return c;
c = c.join("");
c.replace(/^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/, function(f, c, e, d) {
b = a(e).get();
m(b);
if (c) b = j(c).concat(b);
if (d) b = b.concat(j(d))
});
return b ? b : j(c)
}
function j(c) {
var b = document.createElement("div");
b.innerHTML = c;
return a.makeArray(b.childNodes)
}
function o(b) {
return new Function("jQuery", "$item", "var $=jQuery,call,_=[],$data=$item.data;with($data){_.push('" + a.trim(b).replace(/([\\'])/g, "\\$1").replace(/[\r\t\n]/g, " ").replace(/\$\{([^\}]*)\}/g, "{{= $1}}").replace(/\#\{([^\}]*)\}/g, "{{+ $1}}").replace(/\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g, function(m, l, j, d, b, c, e) {
var i = a.tmpl.tag[j],
h, f, g;
if (!i) throw "Template command not found: " + j;
h = i._default || [];
if (c && !/\w$/.test(b)) {
b += c;
c = ""
}
if (b) {
b = k(b);
e = e ? "," + k(e) + ")" : c ? ")" : "";
f = c ? b.indexOf(".") > -1 ? b + c : "(" + b + ").call($item" + e : b;
g = c ? f : "(typeof(" + b + ")==='function'?(" + b + ").call($item):(" + b + "))"
} else g = f = h.$1 || "null";
d = k(d);
return "');" + i[l ? "close" : "open"].split("$notnull_1").join(b ? "typeof(" + b + ")!=='undefined' && (" + b + ")!=null" : "true").split("$1a").join(g).split("$1").join(f).split("$2").join(d ? d.replace(/\s*([^\(]+)\s*(\((.*?)\))?/g, function(d, c, b, a) {
a = a ? "," + a + ")" : b ? ")" : "";
return a ? "(" + c + ").call($item" + a : d
}) : h.$2 || "") + "_.push('"
}) + "');}return _;")
}
function n(c, b) {
c._wrap = i(c, true, a.isArray(b) ? b : [q.test(b) ? b : a(b).html()]).join("")
}
function k(a) {
return a ? a.replace(/\\'/g, "'").replace(/\\\\/g, "\\") : null
}
function s(b) {
var a = document.createElement("div");
a.appendChild(b.cloneNode(true));
return a.innerHTML
}
function m(o) {
var n = "_" + c,
k, j, l = {},
e, p, i;
for (e = 0, p = o.length; e < p; e++) {
if ((k = o[e]).nodeType !== 1) continue;
j = k.getElementsByTagName("*");
for (i = j.length - 1; i >= 0; i--) m(j[i]);
m(k)
}
function m(j) {
var p, i = j,
k, e, m;
if (m = j.getAttribute(d)) {
while (i.parentNode && (i = i.parentNode).nodeType === 1 && !(p = i.getAttribute(d)));
if (p !== m) {
i = i.parentNode ? i.nodeType === 11 ? 0 : i.getAttribute(d) || 0 : 0;
if (!(e = b[m])) {
e = f[m];
e = g(e, b[i] || f[i], null, true);
e.key = ++h;
b[h] = e
}
c && o(m)
}
j.removeAttribute(d)
} else if (c && (e = a.data(j, "tmplItem"))) {
o(e.key);
b[e.key] = e;
i = a.data(j.parentNode, "tmplItem");
i = i ? i.key : 0
}
if (e) {
k = e;
while (k && k.key != i) {
k.nodes.push(j);
k = k.parent
}
delete e._ctnt;
delete e._wrap;
a.data(j, "tmplItem", e)
}
function o(a) {
a = a + n;
e = l[a] = l[a] || g(e, b[e.parent.key + n] || e.parent, null, true)
}
}
}
function u(a, d, c, b) {
if (!a) return l.pop();
l.push({
_: a,
tmpl: d,
item: this,
data: c,
options: b
})
}
function w(d, c, b) {
return a.tmpl(a.template(d), c, b, this)
}
function x(b, d) {
var c = b.options || {};
c.wrapped = d;
return a.tmpl(a.template(b.tmpl), b.data, c, b.item)
}
function v(d, c) {
var b = this._wrap;
return a.map(a(a.isArray(b) ? b.join("") : b).filter(d || "*"), function(a) {
return c ? a.innerText || a.textContent : a.outerHTML || s(a)
})
}
function t() {
var b = this.nodes;
a.tmpl(null, null, null, this).insertBefore(b[0]);
a(b).remove()
}
})(jQuery)