forked from pinceladasdaweb/behance
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.min.js
12 lines (11 loc) · 4.38 KB
/
app.min.js
1
2
3
4
5
6
7
8
9
10
11
12
/*
--------------------------------
Behance Portfolio Page
--------------------------------
+ https://github.com/pinceladasdaweb/Behance-Portfolio-Page
+ version 1.0.0
+ Copyright 2014 Pedro Rogerio
+ Licensed under the MIT license
+ Documentation: https://github.com/pinceladasdaweb/Behance-Portfolio-Page
*/
var Be=function(a,b){"use strict";var c={config:function(a){this.url="./request.php?user="+a.user,this.body=b.querySelector("body"),this.loader=b.querySelector(".loading")},supportsSvg:function(){return b.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image","1.1")},xhr:function(){return new a.XMLHttpRequest},getJSON:function(a,b){var d=c.xhr();a.url=a.url||location.href,a.data=a.data||null,d.open("GET",a.url,!0),d.send(a.data),d.onreadystatechange=function(){200===d.status&&4===d.readyState&&b(JSON.parse(d.responseText))}},create:function(a,c){var d,e=b.createElement(a);for(d in c)c.hasOwnProperty(d)&&(e[d]=c[d]);return e},loop:function(a,b){for(var c=0,d=a.length;d>c;)b(a[c],c),c+=1},userProfile:function(a){var c,d,e,f,g,h,i,j,k=this,l=b.querySelector("#header"),m=b.createTextNode(a.user.display_name),n=a.user.images[138],o=a.user.fields,p=b.createTextNode(a.user.location),q=b.createDocumentFragment();d=k.create("figure",{className:"profile-avatar"}),e=k.create("img",{src:n}),f=k.create("h1",{className:"profile-name"}),g=k.create("ul",{className:"field-list"}),j=k.create("div",{className:"profile-fields"}),i=k.create("div",{className:"profile-location fi-marker"}),k.loop(o,function(a){c=b.createTextNode(a),h=k.create("li",{className:"field-item"}),h.appendChild(c),g.appendChild(h.cloneNode(!0))}),d.appendChild(e),f.appendChild(m),j.appendChild(g),i.appendChild(p),q.appendChild(d),q.appendChild(f),q.appendChild(j),q.appendChild(i),l.appendChild(q)},userProjects:function(a){var c=this;c.loop(a.projects,function(a){var d,e,f,g,h,i,j,k,l,m,n,o,p=a.url,q=a.covers[404],r=b.createTextNode(a.name),s=a.name,t=a.fields,u=b.querySelector(".portfolio-list"),v=b.createDocumentFragment();for(f=c.create("ul",{className:"field-list"}),g=c.create("li",{className:"portfolio-item"}),j=c.create("div",{className:"portfolio-content"}),k=c.create("div",{className:"portfolio-fields"}),l=c.create("figure",{className:"portfolio-cover",title:s}),i=c.create("a",{href:p}),m=c.create("img",{className:"portfolio-image",src:q}),e=c.create("h2",{className:"portfolio-title"}),n=0,o=t.length;o>n;n+=1)d=b.createTextNode(t[n]),h=c.create("li",{className:"field-item"}),h.appendChild(d),f.appendChild(h.cloneNode(!0));i.appendChild(m),l.appendChild(i),j.appendChild(l),e.appendChild(r),j.appendChild(e),k.appendChild(f),j.appendChild(k),g.appendChild(j),v.appendChild(g),u.appendChild(v.cloneNode(!0))})},createHeader:function(){var a,c=this,d=b.createDocumentFragment();a=c.create("header",{className:"portfolio-header clearfix",id:"header"}),d.appendChild(a),c.body.appendChild(d)},createContent:function(){var a,c,d,e=this,f=b.createDocumentFragment();a=e.create("div",{className:"content-area clearfix",id:"content"}),c=e.create("div",{className:"portfolio-area clearfix",id:"portfolio"}),d=e.create("ul",{className:"portfolio-list clearfix"}),c.appendChild(d),a.appendChild(c),f.appendChild(a),e.body.appendChild(f)},createFooter:function(){var a,c,d,e,f,g=this,h=b.createDocumentFragment(),i=b.createTextNode("Powered by"),j=b.createTextNode("Behance");a=g.create("footer",{className:"portfolio-footer clearfix",id:"footer"}),c=g.create("div",{className:"power-by",id:"power"}),d=g.create("p"),f=g.create("a",{className:"power-logo fi-social-behance",href:"http://www.behance.net/",title:"Behance"}),e=g.create("p"),f.appendChild(j),e.appendChild(f),d.appendChild(i),c.appendChild(d),c.appendChild(e),a.appendChild(c),h.appendChild(a),g.body.appendChild(h)},loading:function(a){var b=this;a.removeChild(b.loader)},handleError:function(){var a=this,c=b.createDocumentFragment(),d=a.create("p",{className:"error"}),e=b.createTextNode("An error ocurred, try again later.");d.appendChild(e),c.appendChild(d),a.body.appendChild(c)},attach:function(a){var b=this;b.createHeader(),b.createContent(),b.createFooter(),b.userProfile(a),b.userProjects(a)},request:function(){var a,b=this,c=b.body;b.supportsSvg()||(b.loader.src="./assets/css/img/loading.gif"),b.getJSON({url:b.url},function(d){a=d.http_code,200===a?(b.loading(c),b.attach(d)):(b.loading(c),b.handleError())})},profile:function(a){c.config(a),c.request()}};return{profile:c.profile}}(window,document);