var project={"_id":"56a7c702de78eca41cc5a738","id":"f847c055823d491d6ee7e43f2129ba6329a54eb5","name":"SCAN for PORTAL - all contacts, all fields","user":"56980d31b8759c420f3b46e1","description":"Display list of projects, filtering out unnamed project recipient field","created":"2016-01-19T15:21:20.434Z","shared":false,"server":"micro","datafiles":[{"file":{"link":"https://docs.google.com/spreadsheets/d/1d5cTL7Yt8oQ_I8-0V89Dghe2-3BPuBWa_1Fq5FMXC-4/pubhtml","type":"google spreadsheet","url":"https://spreadsheets.google.com/feeds/list/1d5cTL7Yt8oQ_I8-0V89Dghe2-3BPuBWa_1Fq5FMXC-4/default/public/full?alt=json","message":{"error":false,"text":""}},"varname":"projects","title":"...","activated":true,"name":"datafile","linkedtofile":true,"optional":true,"content":""}],"packs":["jquery","Datatables"],"container":"mainpart","js":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"},"depurl":"https://quipslib.s3.amazonaws.com/prod/f847c055823d491d6ee7e43f2129ba6329a54eb5/script.js"},"title":"Javascript","activated":true,"name":"js","linkedtofile":false,"optional":true,"content":"$(\"#results\").DataTable()"},"css":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"}},"title":"Cascading Style Sheet (CSS)","activated":false,"name":"css","linkedtofile":false,"optional":true},"jade":{"file":{"type":"","url":"","link":"","message":{"error":true,"text":"File not defined"},"depurl":"https://quipslib.s3.amazonaws.com/prod/f847c055823d491d6ee7e43f2129ba6329a54eb5/main.jade"},"title":"Jade","activated":true,"name":"jade","linkedtofile":false,"optional":false,"content":"table#results.display\n thead\n tr\n th Contact Name\n th Organization\n th Email\n th Recipients\n th Project Title\n th Link to Project\n th Objective\n th Milestones\n th Areas of Assistance\n th Donors and Implementing Organizations\n th Status\n th Recipient Composition\n th ICAO region\n th Project Dates\n th Type of Assistance\n th ICAO Priority\n th Budget\n th Funding Status\n th Funding Source\n tbody\n for row in projects.feed.entry\n if(row.gsx$projectstatus.$t)!=\"Project Completed\"\n tr\n td\n span=row.gsx$salutation.$t\n  \n span=row.gsx$firstname.$t\n  \n span=row.gsx$lastname.$t\n td=row.gsx$organizationname.$t\n td=row.gsx$contactemailaddress.$t\n td=row.gsx$recipientstatesororganizations.$t\n td=row.gsx$projecttitle.$t\n td=row.gsx$linktoprojectwebsite.$t\n td=row.gsx$projectobjective.$t\n td=row.gsx$milestonesandoutcomes.$t\n td=row.gsx$areasofassistance.$t\n td\n span=row.gsx$projectdonororfunder.$t\n  \n span=row.gsx$implementingorganization.$t\n td=row.gsx$projectstatus.$t\n td=row.gsx$recipientprojectcomposition.$t\n td=row.gsx$icaoprojectregion.$t\n td\n span=row.gsx$projectstartyear.$t\n   -  \n span=row.gsx$projectendyear.$t\n td=row.gsx$typeofassistance.$t\n td=row.gsx$icaoprioritystates.$t\n td\n span=row.gsx$projectbudget.$t\n  \n span=row.gsx$currencyprimarytype.$t\n  \n span=row.gsx$currencytypesecondbudgetamount.$t\n td=row.gsx$fundingstatus.$t\n td=row.gsx$fundingsources.$t"},"capture":"https://quipslib.s3.amazonaws.com/prod/f847c055823d491d6ee7e43f2129ba6329a54eb5/capture.png","published":"2016-01-28T14:26:56.152Z","sharedwith":[],"prod":true,"deploydate":"2016-03-01T17:57:56.547Z","libs":[{"_id":"5672b602f36b083214f3e63e","description":"The Write Less, Do More, JavaScript Library","key":"","version":"2.1.1","link":"https://code.jquery.com/jquery-2.1.4.js","name":"jquery","__v":0,"required":true,"haskey":false,"website":"https://jquery.com"},{"_id":"568eb9222043a726661b0ad2","required":false,"description":"A plug-in for the jQuery Javascript Library. It is a highly flexible tool, based upon the foundations of progressive enhancement, and will add advanced interaction controls to any HTML table.","haskey":false,"version":"1.10.10","link":"https://cdn.datatables.net/s/dt/dt-1.10.10/datatables.min.css,https://cdn.datatables.net/s/dt/dt-1.10.10/datatables.min.js","name":"Datatables","__v":0,"website":"https://www.datatables.net"}],"host":"https://quips.anbdata.com","version":"prod"} function loadjquery(url,callback) { if(typeof jQuery=='undefined') { loadScript(url,callback) } else { callback() } } function loadScript(url, callback) { var script = document.createElement("script") script.type = "text/javascript"; if (script.readyState) { //IE script.onreadystatechange = function () { if (script.readyState == "loaded" || script.readyState == "complete") { script.onreadystatechange = null; callback(); } }; } else { //Others script.onload = function () { callback(); }; } script.src = url; document.getElementsByTagName("head")[0].appendChild(script); } (function () { loadjquery("https://code.jquery.com/jquery-2.1.4.js", function () { //jQuery loaded $("#"+project.container).html("") var libs=[] $(project.libs).each(function(i,v){ if (v.name!="jquery") { $(v.link.split(",")).each(function(j,u){ if (u.slice(-2)=="js") { libs.push(u+(v.haskey?"?key="+project[v.name+"key"]:"")) } else { $("head").append("") } }) } }) if (project.morejs) { $(project.morejs).each(function(i,v){ if ((v.url.substring(0,2)=="//")||(v.url.substring(0,8)=="https://")||(v.url.substring(0,7)=="http://")) { libs.push(v.url) } }) } if (project.morecss) { $(project.morecss).each(function(i,v){ $("head").append("") }) } loadlibs(libs.reverse()) }); })(); function loadlibs(libs){ if (libs.length>0) { var l=libs.pop() loadScript(l,function(){ //$.getScript(l,function(res){ loadlibs(libs) }) //.fail(function(e){ // loadlibs(libs) // //}) } else { start() } } function putscriptcontent(content){ var script = document.createElement("script") script.type = "text/javascript"; $(script).text(content) document.getElementsByTagName("head")[0].appendChild(script); } function start(){ //load jade $.getJSON(project.host+"/project/"+project.version+"/"+project.id+"/render?callback=?"+(project.datachange?"&data="+project.datachange:""),function(res){ $("#"+project.container).html(res.html) if (project.css.activated) { if (project.css.linkedtofile) { $("head").append("")} else { $("head").append("")} } if (project.js.activated) { if (project.js.linkedtofile) { $.getScript(project.js.file[(project.prod?"depurl":"url")])} else { putscriptcontent(project.js.content)} if (project.mainjs) { window[project.mainjs]() } } }) }