├── .gitignore ├── README.md ├── images ├── extra-extra-logo.png └── extra-extra-footer-logo.png ├── _config.yml ├── javascripts ├── agents-pool.js ├── profile-photo.js └── modernizr.js ├── profile-fav.html ├── index.html ├── profile-photo.html ├── agents-pool.html ├── profile-landing.html ├── profile-avail.html ├── _layouts └── default.html ├── agents-gig.html ├── stylesheets └── app.css ├── params.json ├── profile-info.html └── _data └── people.json /.gitignore: -------------------------------------------------------------------------------- 1 | _site/ 2 | .DS_Store 3 | Gemfile 4 | Gemfile.lock -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # abq-filmextras 2 | Build week project to prototype a film extras marketplace 3 | -------------------------------------------------------------------------------- /images/extra-extra-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeforamerica/abq-filmextras/gh-pages/images/extra-extra-logo.png -------------------------------------------------------------------------------- /images/extra-extra-footer-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeforamerica/abq-filmextras/gh-pages/images/extra-extra-footer-logo.png -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | # If you're hosting your site at a Project repository on GitHub pages 2 | # (http://yourusername.github.io/repository-name) 3 | # and NOT your User repository (http://yourusername.github.io) 4 | # then add in the baseurl here, like this: "/repository-name" 5 | baseurl: "/abq-filmextras" 6 | -------------------------------------------------------------------------------- /javascripts/agents-pool.js: -------------------------------------------------------------------------------- 1 | jQuery(document).ready(function($) { 2 | var $pool = $(".pool"), 3 | $cards = $pool.find(".vcard"), 4 | selectedClass = "selected"; 5 | 6 | $cards.click(function(e) { 7 | e.preventDefault(); 8 | var $card = $(this); 9 | $card.toggleClass(selectedClass); 10 | }); 11 | }); -------------------------------------------------------------------------------- /profile-fav.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |
7 |

Tell us a bit more about yourself!

8 | 9 |

What is your favorite

10 |
11 | 16 | 17 | Next 18 |
19 |
20 |
-------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |
7 |

Welcome to the Industry.
The first step to your big break in Albuquerque!

8 |

or at least some extra cash.

9 |
10 |
11 | 12 |
13 |
14 |

Be an Extra!!!

15 |
16 |
17 |

Looking for extras?!?

18 |
19 |
-------------------------------------------------------------------------------- /profile-photo.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |
7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 |

Smile for the Camera!

16 |
17 |
18 | 19 | Next 20 | 21 |

Tips:

22 | 27 | 28 | -------------------------------------------------------------------------------- /agents-pool.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |

Pool of Extras Candidates

6 |

These people want to be extras in your film. Time to hire!

7 | 8 |
9 | {% for person in site.data.people %} 10 |
11 |
12 | 18 |
19 | {% endfor %} 20 |
21 | 22 |
23 |
24 | Next 25 |
26 |
27 | 28 | -------------------------------------------------------------------------------- /profile-landing.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |

Thanks

6 |

Your profile and availability have been saved.

7 | 8 |
9 |
10 | 17 |
18 | 19 |
20 |
21 | 28 |
29 | 30 |
31 |
32 | 39 |
40 | 41 |

Tips:

42 | -------------------------------------------------------------------------------- /profile-avail.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |
7 |

What is your availability?

8 | 9 | 18 | 19 | Next 20 | 21 |

Tips:

22 | 26 |
27 |
-------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | ABQ FilmExtras 17 | 18 | 19 | 20 |
21 |
22 |

23 |
24 |
25 | 26 |
27 |
28 | {{ content }} 29 |
30 |
31 | 32 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /agents-gig.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |

Describe your Gig

6 |

7 | 8 |
9 |
10 |
11 | 14 |
15 |
16 |
17 |
18 | 21 |
22 |
23 | 31 |
32 |
33 |
34 |
35 | 38 |
39 |
40 | 48 |
49 |
50 |
51 |
52 | 55 |
56 |
57 |
-------------------------------------------------------------------------------- /stylesheets/app.css: -------------------------------------------------------------------------------- 1 | /* colors 2 | orange: #E4C744 3 | red: #E70E1D 4 | */ 5 | body {background: #FAFAFA;} 6 | 7 | .full { width: 100%; } 8 | .photo-box { border: 1px solid black; text-align: center; position: relative; } 9 | .photo-default { font-size: 300px; line-height: 300px; } 10 | #camera-button { border: 1px solid black; position: absolute; left: 50%; bottom: -40px; font-size: 50px; line-height: 80px; width: 80px; height: 80px; margin: 0 0 0 -40px; padding: 0px; border-radius: 1000px; } 11 | .photo-caption { margin-top: 1em; text-align: center; } 12 | #profile-video { display: none; width: 100%; height: auto; } 13 | #profile-snapshot { display: none; width: 100%; height: auto; } 14 | .logo {padding: 40px;} 15 | body {font-family: 'Droid Serif', serif; font-size: 100%;} 16 | .vcard { width: 300px; margin-right: 1em; vertical-align: top; } 17 | .vcard.selected { background-color: lightgreen; } 18 | .vcard .vcard-photo { font-size: 50px; line-height: 50px; } 19 | .vcard UL { margin-left: 50px; } 20 | .pool .vcard { height: 9em; } 21 | .footer {width:100%; background-color:#E4C744; margin-top:50px; padding:40px 0px; text-align: center; color: #333; border-top: 2px solid #E70E1D;} 22 | 23 | /* font / text */ 24 | h1, h2, h3, h4, h5, input, label, p, li, small {font-family: 'Droid Serif', serif; font-weight: 700; color: #E70E1D;} 25 | span.italic {font-style: italic;} 26 | 27 | /* BUTTONS! */ 28 | a.button { color: white; background-color: #E4C744; border: 2px solid #E70E1D; color: #E70E1D; border-radius: 10px; height: 70px; padding-top: 23px;} 29 | a.button:hover, a.button:focus { color: #E4C744; background-color: #E70E1D;} 30 | .vcard.selected {background-color: #E4C744;} 31 | 32 | -------------------------------------------------------------------------------- /params.json: -------------------------------------------------------------------------------- 1 | {"name":"Abq-filmextras","tagline":"Build week project to prototype a film extras marketplace","body":"### Welcome to GitHub Pages.\r\nThis automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:\r\n\r\n```\r\n$ cd your_repo_root/repo_name\r\n$ git fetch origin\r\n$ git checkout gh-pages\r\n```\r\n\r\nIf you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.\r\n\r\n### Designer Templates\r\nWe've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.\r\n\r\n### Rather Drive Stick?\r\nIf you prefer to not use the automatic generator, push a branch named `gh-pages` to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.\r\n\r\n### Authors and Contributors\r\nYou can @mention a GitHub username to generate a link to their profile. The resulting `` element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt), PJ Hyett (@pjhyett), and Tom Preston-Werner (@mojombo) founded GitHub.\r\n\r\n### Support or Contact\r\nHaving trouble with Pages? Check out the documentation at https://help.github.com/pages or contact support@github.com and we’ll help you sort it out.\r\n","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."} -------------------------------------------------------------------------------- /javascripts/profile-photo.js: -------------------------------------------------------------------------------- 1 | /* 2 | http://davidwalsh.name/browser-camera 3 | */ 4 | 5 | jQuery(document).ready(function($) { 6 | var initialized = false; 7 | var $video = $("#profile-video"), 8 | $snapshot = $("#profile-snapshot"), 9 | $button = $("#camera-button"), 10 | $default = $(".photo-default"); 11 | var width = $video.attr("width"), 12 | height = $video.attr("height"); 13 | 14 | // Grab elements, create settings, etc. 15 | var canvas = $snapshot[0], 16 | context = canvas.getContext("2d"), 17 | video = $video[0], 18 | videoObj = { "video": true }, 19 | errBack = function(error) { 20 | console.log("Video capture error: ", error.code); 21 | }; 22 | 23 | var play = function() { 24 | $default.hide(); 25 | $video.show(); 26 | $snapshot.hide(); 27 | video.play(); 28 | }; 29 | 30 | var snapshot = function() { 31 | $default.hide(); 32 | video.pause(); 33 | $video.hide(); 34 | $snapshot.show(); 35 | context.drawImage(video, 0, 0, width, height); 36 | }; 37 | 38 | var initialize = function() { 39 | // Put video listeners into place 40 | if(navigator.getUserMedia) { // Standard 41 | navigator.getUserMedia(videoObj, function(stream) { 42 | video.src = stream; 43 | video.play(); 44 | }, errBack); 45 | } else if(navigator.webkitGetUserMedia) { // WebKit-prefixed 46 | navigator.webkitGetUserMedia(videoObj, function(stream){ 47 | video.src = window.webkitURL.createObjectURL(stream); 48 | play(); 49 | }, errBack); 50 | } 51 | else if(navigator.mozGetUserMedia) { // Firefox-prefixed 52 | navigator.mozGetUserMedia(videoObj, function(stream){ 53 | video.src = window.URL.createObjectURL(stream); 54 | play(); 55 | }, errBack); 56 | } 57 | else { 58 | var err = "Sorry, video capture is not supported on this device."; 59 | alert(err); 60 | } 61 | }; 62 | 63 | // button listener to snapshot 64 | $button.click(function(e) { 65 | e.preventDefault(); 66 | if (!initialized) { 67 | initialized = true; 68 | initialize(); 69 | } else if (video.paused) { 70 | play(); 71 | } else { 72 | snapshot(); 73 | } 74 | }); 75 | }); -------------------------------------------------------------------------------- /profile-info.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |
7 |

Hi Jennings! Tell us a little bit about yourself

8 |
9 |
10 |
11 |
12 |
13 | 14 | 15 | 16 | 17 |
How tall are you?
18 |
19 | 20 | 21 | 22 |
23 |
How much do you weigh?
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 | -------------------------------------------------------------------------------- /_data/people.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "John Doe", 4 | "age": 35, 5 | "gender": "m", 6 | "height": "5'10\"", 7 | "weight": 165, 8 | "fav_type": "tv", 9 | "fav_item": "Breaking Bad" 10 | }, 11 | { 12 | "name": "James Donely", 13 | "age": 24, 14 | "gender": "m", 15 | "height": "5'2\"", 16 | "weight": 105, 17 | "fav_type": "movie", 18 | "fav_item": "Shakespeare in Love" 19 | }, 20 | { 21 | "name": "Lynn Stephenson", 22 | "age": 51, 23 | "gender": "f", 24 | "height": "5'5\"", 25 | "weight": 120, 26 | "fav_type": "tv", 27 | "fav_item": "Gilmore Girls" 28 | }, 29 | { 30 | "name": "Madison Oldenbrooke", 31 | "age": 45, 32 | "gender": "m", 33 | "height": "5'8\"", 34 | "weight": 155, 35 | "fav_type": "tv", 36 | "fav_item": "Dancing with the Stars" 37 | }, 38 | { 39 | "name": "Jennings Hanna", 40 | "age": 32, 41 | "gender": "m", 42 | "height": "6'1\"", 43 | "weight": 150, 44 | "fav_type": "actor", 45 | "fav_item": "Sean Penn" 46 | }, 47 | { 48 | "name": "Regina White", 49 | "age": 33, 50 | "gender": "f", 51 | "height": "5'3\"", 52 | "weight": 130, 53 | "fav_type": "actor", 54 | "fav_item": "Ashton Kutcher" 55 | }, 56 | { 57 | "name": "Florence R. Brown", 58 | "age": 32, 59 | "gender": "f", 60 | "height": "5'1\"", 61 | "weight": 174, 62 | "fav_type": "movie", 63 | "fav_item": "The Princess Bride" 64 | }, 65 | { 66 | "name": "Edward Fewell", 67 | "age": 55, 68 | "gender": "m", 69 | "height": "5'10\"", 70 | "weight": 250, 71 | "fav_type": "tv", 72 | "fav_item": "The Sopranos" 73 | }, 74 | { 75 | "name": "Jason Adams", 76 | "age": 34, 77 | "gender": "m", 78 | "height": "6'3\"", 79 | "weight": 156, 80 | "fav_type": "tv", 81 | "fav_item": "Downton Abbey" 82 | }, 83 | { 84 | "name": "Christine N. Douglas", 85 | "age": 64, 86 | "gender": "f", 87 | "height": "5'1\"", 88 | "weight": 123, 89 | "fav_type": "tv", 90 | "fav_item": "Girls" 91 | }, 92 | { 93 | "name": "Cindy Curci", 94 | "age": 29, 95 | "gender": "f", 96 | "height": "5'5\"", 97 | "weight": 135, 98 | "fav_type": "movie", 99 | "fav_item": "Fast and Furious" 100 | }, 101 | { 102 | "name": "Kenneth Wolfson", 103 | "age": 33, 104 | "gender": "m", 105 | "height": "5'11\"", 106 | "weight": 190, 107 | "fav_type": "movie", 108 | "fav_item": "The Matrix" 109 | }, 110 | { 111 | "name": "Harold Morris", 112 | "age": 62, 113 | "gender": "m", 114 | "height": "5'3\"", 115 | "weight": 175, 116 | "fav_type": "movie", 117 | "fav_item": "The Pianist" 118 | }, 119 | { 120 | "name": "Paula J. Montano", 121 | "age": 23, 122 | "gender": "f", 123 | "height": "5'4\"", 124 | "weight": 140, 125 | "fav_type": "movie", 126 | "fav_item": "Wall-E" 127 | }, 128 | { 129 | "name": "Ruth Lindsey", 130 | "age": 51, 131 | "gender": "f", 132 | "height": "5'7\"", 133 | "weight": 136, 134 | "fav_type": "actor", 135 | "fav_item": "Tom Hanks" 136 | }, 137 | { 138 | "name": "Robert T. Arocha", 139 | "age": 38, 140 | "gender": "m", 141 | "height": "5'6\"", 142 | "weight": 197, 143 | "fav_type": "actor", 144 | "fav_item": "Michael Caine" 145 | }, 146 | { 147 | "name": "Clifton S. Nicolas", 148 | "age": 40, 149 | "gender": "m", 150 | "height": "5'10\"", 151 | "weight": 180, 152 | "fav_type": "tv", 153 | "fav_item": "Parks and Rec" 154 | }, 155 | { 156 | "name": "Hulda J. Floyd", 157 | "age": 29, 158 | "gender": "f", 159 | "height": "5'8\"", 160 | "weight": 133, 161 | "fav_type": "actor", 162 | "fav_item": "Robin Williams" 163 | }, 164 | { 165 | "name": "Cynthia Perry", 166 | "age": 49, 167 | "gender": "f", 168 | "height": "5'9\"", 169 | "weight": 132, 170 | "fav_type": "tv", 171 | "fav_item": "Grey's Anatomy" 172 | } 173 | ] -------------------------------------------------------------------------------- /javascripts/modernizr.js: -------------------------------------------------------------------------------- 1 | /* Modernizr 2.5.2 (Custom Build) | MIT & BSD 2 | * Build: http://www.modernizr.com/download/#-fontface-borderradius-boxshadow-textshadow-cssgradients-shiv-cssclasses-teststyles-testprop-testallprops-prefixes-domprefixes-load 3 | */ 4 | ;window.Modernizr=function(a,b,c){function z(a){j.cssText=a}function A(a,b){return z(m.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a)if(j[a[d]]!==c)return b=="pfx"?a[d]:!0;return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.substr(1),e=(a+" "+o.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.5.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,w=function(a,c,d,e){var f,i,j,k=b.createElement("div"),l=b.body,m=l?l:b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),k.appendChild(j);return f=["­",""].join(""),k.id=h,m.innerHTML+=f,m.appendChild(k),l||g.appendChild(m),i=c(k,a),l?k.parentNode.removeChild(k):m.parentNode.removeChild(m),!!i},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(u.call(arguments)))};return e});var G=function(a,c){var d=a.join(""),f=c.length;w(d,function(a,c){var d=b.styleSheets[b.styleSheets.length-1],g=d?d.cssRules&&d.cssRules[0]?d.cssRules[0].cssText:d.cssText||"":"",h=a.childNodes,i={};while(f--)i[h[f].id]=h[f];e.fontface=/src/i.test(g)&&g.indexOf(c.split(" ")[0])===0},f,c)}(['@font-face {font-family:"font";src:url("https://")}'],["fontface"]);q.borderradius=function(){return F("borderRadius")},q.boxshadow=function(){return F("boxShadow")},q.textshadow=function(){return b.createElement("div").style.textShadow===""},q.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return z((a+"-webkit- ".split(" ").join(b+a)+m.join(c+a)).slice(0,-a.length)),C(j.backgroundImage,"gradient")},q.fontface=function(){return e.fontface};for(var H in q)y(q,H)&&(v=H.toLowerCase(),e[v]=q[H](),t.push((e[v]?"":"no-")+v));return z(""),i=k=null,function(a,b){function g(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function h(){var a=k.elements;return typeof a=="string"?a.split(" "):a}function i(a){function m(){var a=j.cloneNode(!1);return k.shivMethods?(i(a),a):a}function n(a){var b=(c[a]||(c[a]=e(a))).cloneNode(!1);return k.shivMethods&&!d.test(a)?j.appendChild(b):b}var b,c={},e=a.createElement,f=a.createDocumentFragment,g=h(),j=f(),l=g.length;while(l--)b=g[l],c[b]=e(b),j.createElement(b);a.createElement=n,a.createDocumentFragment=m}function j(a){var b;return a.documentShived?a:(k.shivCSS&&!e&&(b=!!g(a,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),k.shivMethods&&!f&&(b=!i(a)),b&&(a.documentShived=b),a)}var c=a.html5||{},d=/^<|^(?:button|iframe|input|script|textarea)$/i,e,f;(function(){var c,d=b.createElement("a"),g=a.getComputedStyle,h=b.documentElement,i=b.body||(c=h.insertBefore(b.createElement("body"),h.firstChild));i.insertBefore(d,i.firstChild),d.hidden=!0,d.innerHTML="",e=(d.currentStyle||g(d,null)).display=="none",f=d.childNodes.length==1||function(){try{b.createElement("a")}catch(a){return!0}var c=b.createDocumentFragment();return typeof c.cloneNode=="undefined"||typeof c.createDocumentFragment=="undefined"||typeof c.createElement=="undefined"}(),i.removeChild(d),c&&h.removeChild(c)})();var k={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video".split(" "),shivCSS:c.shivCSS!==!1,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:j};a.html5=k,j(b)}(this,b),e._version=d,e._prefixes=m,e._domPrefixes=p,e._cssomPrefixes=o,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=w,g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+t.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return o.call(a)=="[object Function]"}function e(a){return typeof a=="string"}function f(){}function g(a){return!a||a=="loaded"||a=="complete"||a=="uninitialized"}function h(){var a=p.shift();q=1,a?a.t?m(function(){(a.t=="c"?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){a!="img"&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l={},o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};y[c]===1&&(r=1,y[c]=[],l=b.createElement(a)),a=="object"?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),a!="img"&&(r||y[c]===2?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i(b=="c"?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),p.length==1&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=!!b.attachEvent,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return o.call(a)=="[object Array]"},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f