CINXE.COM
Explore featured case studies | Drupal.org
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" version="XHTML+RDFa 1.0" dir="ltr" xmlns:fb="http://ogp.me/ns/fb#" xmlns:og="http://ogp.me/ns#"> <head profile="http://www.w3.org/1999/xhtml/vocab"><script type="text/javascript" src="https://web-static.archive.org/_static/js/bundle-playback.js?v=7YQSqjSh" charset="utf-8"></script> <script type="text/javascript" src="https://web-static.archive.org/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="https://web-static.archive.org/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://www.drupal.org/case-studies","20210322130519","https://web.archive.org/","web","https://web-static.archive.org/_static/", "1616418319"); </script> <link rel="stylesheet" type="text/css" href="https://web-static.archive.org/_static/css/banner-styles.css?v=p7PEIJWi" /> <link rel="stylesheet" type="text/css" href="https://web-static.archive.org/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta name="HandheldFriendly" content="true"/> <meta name="viewport" content="width=device-width"/> <meta name="MobileOptimized" content="width"/> <!--[if IE]><![endif]--> <link rel="dns-prefetch" href="//web.archive.org/web/20210322130519/https://fonts.gstatic.com/"/> <link rel="preconnect" href="//web.archive.org/web/20210322130519/https://fonts.gstatic.com/" crossorigin=""/> <link rel="dns-prefetch" href="//web.archive.org/web/20210322130519/https://fonts.googleapis.com/"/> <link rel="preconnect" href="//web.archive.org/web/20210322130519/https://fonts.googleapis.com/"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><script type="text/javascript">(window.NREUM||(NREUM={})).loader_config={xpid:"XAcEV19XGwcCUldTDwg=",licenseKey:"e671e25255",applicationID:"4266189"};window.NREUM||(NREUM={}),__nr_require=function(t,e,n){function r(n){if(!e[n]){var i=e[n]={exports:{}};t[n][0].call(i.exports,function(e){var i=t[n][1][e];return r(i||e)},i,i.exports)}return e[n].exports}if("function"==typeof __nr_require)return __nr_require;for(var i=0;i<n.length;i++)r(n[i]);return r}({1:[function(t,e,n){function r(t){try{c.console&&console.log(t)}catch(e){}}var i,o=t("ee"),a=t(24),c={};try{i=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(c.console=!0,i.indexOf("dev")!==-1&&(c.dev=!0),i.indexOf("nr_dev")!==-1&&(c.nrDev=!0))}catch(s){}c.nrDev&&o.on("internal-error",function(t){r(t.stack)}),c.dev&&o.on("fn-err",function(t,e,n){r(n.stack)}),c.dev&&(r("NR AGENT IN DEVELOPMENT MODE"),r("flags: "+a(c,function(t,e){return t}).join(", ")))},{}],2:[function(t,e,n){function r(t,e,n,r,c){try{p?p-=1:i(c||new UncaughtException(t,e,n),!0)}catch(f){try{o("ierr",[f,s.now(),!0])}catch(d){}}return"function"==typeof u&&u.apply(this,a(arguments))}function UncaughtException(t,e,n){this.message=t||"Uncaught error with no additional information",this.sourceURL=e,this.line=n}function i(t,e){var n=e?null:s.now();o("err",[t,n])}var o=t("handle"),a=t(25),c=t("ee"),s=t("loader"),f=t("gos"),u=window.onerror,d=!1,l="nr@seenError",p=0;s.features.err=!0,t(1),window.onerror=r;try{throw new Error}catch(h){"stack"in h&&(t(9),t(8),"addEventListener"in window&&t(5),s.xhrWrappable&&t(10),d=!0)}c.on("fn-start",function(t,e,n){d&&(p+=1)}),c.on("fn-err",function(t,e,n){d&&!n[l]&&(f(n,l,function(){return!0}),this.thrown=!0,i(n))}),c.on("fn-end",function(){d&&!this.thrown&&p>0&&(p-=1)}),c.on("internal-error",function(t){o("ierr",[t,s.now(),!0])})},{}],3:[function(t,e,n){t("loader").features.ins=!0},{}],4:[function(t,e,n){function r(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var i=t("ee"),o=t("handle"),a=t(9),c=t(8),s="learResourceTimings",f="addEventListener",u="resourcetimingbufferfull",d="bstResource",l="resource",p="-start",h="-end",m="fn"+p,w="fn"+h,v="bstTimer",g="pushState",y=t("loader");y.features.stn=!0,t(7),"addEventListener"in window&&t(5);var x=NREUM.o.EV;i.on(m,function(t,e){var n=t[0];n instanceof x&&(this.bstStart=y.now())}),i.on(w,function(t,e){var n=t[0];n instanceof x&&o("bst",[n,e,this.bstStart,y.now()])}),a.on(m,function(t,e,n){this.bstStart=y.now(),this.bstType=n}),a.on(w,function(t,e){o(v,[e,this.bstStart,y.now(),this.bstType])}),c.on(m,function(){this.bstStart=y.now()}),c.on(w,function(t,e){o(v,[e,this.bstStart,y.now(),"requestAnimationFrame"])}),i.on(g+p,function(t){this.time=y.now(),this.startPath=location.pathname+location.hash}),i.on(g+h,function(t){o("bstHist",[location.pathname+location.hash,this.startPath,this.time])}),f in window.performance&&(window.performance["c"+s]?window.performance[f](u,function(t){o(d,[window.performance.getEntriesByType(l)]),window.performance["c"+s]()},!1):window.performance[f]("webkit"+u,function(t){o(d,[window.performance.getEntriesByType(l)]),window.performance["webkitC"+s]()},!1)),document[f]("scroll",r,{passive:!0}),document[f]("keypress",r,!1),document[f]("click",r,!1)}},{}],5:[function(t,e,n){function r(t){for(var e=t;e&&!e.hasOwnProperty(u);)e=Object.getPrototypeOf(e);e&&i(e)}function i(t){c.inPlace(t,[u,d],"-",o)}function o(t,e){return t[1]}var a=t("ee").get("events"),c=t("wrap-function")(a,!0),s=t("gos"),f=XMLHttpRequest,u="addEventListener",d="removeEventListener";e.exports=a,"getPrototypeOf"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(i(window),i(f.prototype)),a.on(u+"-start",function(t,e){var n=t[1],r=s(n,"nr@wrapped",function(){function t(){if("function"==typeof n.handleEvent)return n.handleEvent.apply(n,arguments)}var e={object:t,"function":n}[typeof n];return e?c(e,"fn-",null,e.name||"anonymous"):n});this.wrapped=t[1]=r}),a.on(d+"-start",function(t){t[1]=this.wrapped||t[1]})},{}],6:[function(t,e,n){function r(t,e,n){var r=t[e];"function"==typeof r&&(t[e]=function(){var t=o(arguments),e={};i.emit(n+"before-start",[t],e);var a;e[m]&&e[m].dt&&(a=e[m].dt);var c=r.apply(this,t);return i.emit(n+"start",[t,a],c),c.then(function(t){return i.emit(n+"end",[null,t],c),t},function(t){throw i.emit(n+"end",[t],c),t})})}var i=t("ee").get("fetch"),o=t(25),a=t(24);e.exports=i;var c=window,s="fetch-",f=s+"body-",u=["arrayBuffer","blob","json","text","formData"],d=c.Request,l=c.Response,p=c.fetch,h="prototype",m="nr@context";d&&l&&p&&(a(u,function(t,e){r(d[h],e,f),r(l[h],e,f)}),r(c,"fetch",s),i.on(s+"end",function(t,e){var n=this;if(e){var r=e.headers.get("content-length");null!==r&&(n.rxSize=r),i.emit(s+"done",[null,e],n)}else i.emit(s+"done",[t],n)}))},{}],7:[function(t,e,n){var r=t("ee").get("history"),i=t("wrap-function")(r);e.exports=r;var o=window.history&&window.history.constructor&&window.history.constructor.prototype,a=window.history;o&&o.pushState&&o.replaceState&&(a=o),i.inPlace(a,["pushState","replaceState"],"-")},{}],8:[function(t,e,n){var r=t("ee").get("raf"),i=t("wrap-function")(r),o="equestAnimationFrame";e.exports=r,i.inPlace(window,["r"+o,"mozR"+o,"webkitR"+o,"msR"+o],"raf-"),r.on("raf-start",function(t){t[0]=i(t[0],"fn-")})},{}],9:[function(t,e,n){function r(t,e,n){t[0]=a(t[0],"fn-",null,n)}function i(t,e,n){this.method=n,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],"fn-",this,n)}var o=t("ee").get("timer"),a=t("wrap-function")(o),c="setTimeout",s="setInterval",f="clearTimeout",u="-start",d="-";e.exports=o,a.inPlace(window,[c,"setImmediate"],c+d),a.inPlace(window,[s],s+d),a.inPlace(window,[f,"clearImmediate"],f+d),o.on(s+u,r),o.on(c+u,i)},{}],10:[function(t,e,n){function r(t,e){d.inPlace(e,["onreadystatechange"],"fn-",c)}function i(){var t=this,e=u.context(t);t.readyState>3&&!e.resolved&&(e.resolved=!0,u.emit("xhr-resolved",[],t)),d.inPlace(t,g,"fn-",c)}function o(t){y.push(t),h&&(b?b.then(a):w?w(a):(E=-E,R.data=E))}function a(){for(var t=0;t<y.length;t++)r([],y[t]);y.length&&(y=[])}function c(t,e){return e}function s(t,e){for(var n in t)e[n]=t[n];return e}t(5);var f=t("ee"),u=f.get("xhr"),d=t("wrap-function")(u),l=NREUM.o,p=l.XHR,h=l.MO,m=l.PR,w=l.SI,v="readystatechange",g=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],y=[];e.exports=u;var x=window.XMLHttpRequest=function(t){var e=new p(t);try{u.emit("new-xhr",[e],e),e.addEventListener(v,i,!1)}catch(n){try{u.emit("internal-error",[n])}catch(r){}}return e};if(s(p,x),x.prototype=p.prototype,d.inPlace(x.prototype,["open","send"],"-xhr-",c),u.on("send-xhr-start",function(t,e){r(t,e),o(e)}),u.on("open-xhr-start",r),h){var b=m&&m.resolve();if(!w&&!m){var E=1,R=document.createTextNode(E);new h(a).observe(R,{characterData:!0})}}else f.on("fn-end",function(t){t[0]&&t[0].type===v||a()})},{}],11:[function(t,e,n){function r(t){if(!c(t))return null;var e=window.NREUM;if(!e.loader_config)return null;var n=(e.loader_config.accountID||"").toString()||null,r=(e.loader_config.agentID||"").toString()||null,f=(e.loader_config.trustKey||"").toString()||null;if(!n||!r)return null;var h=p.generateSpanId(),m=p.generateTraceId(),w=Date.now(),v={spanId:h,traceId:m,timestamp:w};return(t.sameOrigin||s(t)&&l())&&(v.traceContextParentHeader=i(h,m),v.traceContextStateHeader=o(h,w,n,r,f)),(t.sameOrigin&&!u()||!t.sameOrigin&&s(t)&&d())&&(v.newrelicHeader=a(h,m,w,n,r,f)),v}function i(t,e){return"00-"+e+"-"+t+"-01"}function o(t,e,n,r,i){var o=0,a="",c=1,s="",f="";return i+"@nr="+o+"-"+c+"-"+n+"-"+r+"-"+t+"-"+a+"-"+s+"-"+f+"-"+e}function a(t,e,n,r,i,o){var a="btoa"in window&&"function"==typeof window.btoa;if(!a)return null;var c={v:[0,1],d:{ty:"Browser",ac:r,ap:i,id:t,tr:e,ti:n}};return o&&r!==o&&(c.d.tk=o),btoa(JSON.stringify(c))}function c(t){return f()&&s(t)}function s(t){var e=!1,n={};if("init"in NREUM&&"distributed_tracing"in NREUM.init&&(n=NREUM.init.distributed_tracing),t.sameOrigin)e=!0;else if(n.allowed_origins instanceof Array)for(var r=0;r<n.allowed_origins.length;r++){var i=h(n.allowed_origins[r]);if(t.hostname===i.hostname&&t.protocol===i.protocol&&t.port===i.port){e=!0;break}}return e}function f(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.enabled}function u(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.exclude_newrelic_header}function d(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&NREUM.init.distributed_tracing.cors_use_newrelic_header!==!1}function l(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.cors_use_tracecontext_headers}var p=t(21),h=t(13);e.exports={generateTracePayload:r,shouldGenerateTrace:c}},{}],12:[function(t,e,n){function r(t){var e=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r<l;r++)t.removeEventListener(d[r],this.listener,!1);e.aborted||(n.duration=a.now()-this.startTime,this.loadCaptureCalled||4!==t.readyState?null==e.status&&(e.status=0):o(this,t),n.cbTime=this.cbTime,u.emit("xhr-done",[t],t),c("xhr",[e,n,this.startTime]))}}function i(t,e){var n=s(e),r=t.params;r.host=n.hostname+":"+n.port,r.pathname=n.pathname,t.parsedOrigin=s(e),t.sameOrigin=t.parsedOrigin.sameOrigin}function o(t,e){t.params.status=e.status;var n=w(e,t.lastSize);if(n&&(t.metrics.rxSize=n),t.sameOrigin){var r=e.getResponseHeader("X-NewRelic-App-Data");r&&(t.params.cat=r.split(", ").pop())}t.loadCaptureCalled=!0}var a=t("loader");if(a.xhrWrappable){var c=t("handle"),s=t(13),f=t(11).generateTracePayload,u=t("ee"),d=["load","error","abort","timeout"],l=d.length,p=t("id"),h=t(17),m=t(16),w=t(14),v=window.XMLHttpRequest;a.features.xhr=!0,t(10),t(6),u.on("new-xhr",function(t){var e=this;e.totalCbs=0,e.called=0,e.cbTime=0,e.end=r,e.ended=!1,e.xhrGuids={},e.lastSize=null,e.loadCaptureCalled=!1,t.addEventListener("load",function(n){o(e,t)},!1),h&&(h>34||h<10)||window.opera||t.addEventListener("progress",function(t){e.lastSize=t.loaded},!1)}),u.on("open-xhr-start",function(t){this.params={method:t[0]},i(this,t[1]),this.metrics={}}),u.on("open-xhr-end",function(t,e){"loader_config"in NREUM&&"xpid"in NREUM.loader_config&&this.sameOrigin&&e.setRequestHeader("X-NewRelic-ID",NREUM.loader_config.xpid);var n=f(this.parsedOrigin);if(n){var r=!1;n.newrelicHeader&&(e.setRequestHeader("newrelic",n.newrelicHeader),r=!0),n.traceContextParentHeader&&(e.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&e.setRequestHeader("tracestate",n.traceContextStateHeader),r=!0),r&&(this.dt=n)}}),u.on("send-xhr-start",function(t,e){var n=this.metrics,r=t[0],i=this;if(n&&r){var o=m(r);o&&(n.txSize=o)}this.startTime=a.now(),this.listener=function(t){try{"abort"!==t.type||i.loadCaptureCalled||(i.params.aborted=!0),("load"!==t.type||i.called===i.totalCbs&&(i.onloadCalled||"function"!=typeof e.onload))&&i.end(e)}catch(n){try{u.emit("internal-error",[n])}catch(r){}}};for(var c=0;c<l;c++)e.addEventListener(d[c],this.listener,!1)}),u.on("xhr-cb-time",function(t,e,n){this.cbTime+=t,e?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof n.onload||this.end(n)}),u.on("xhr-load-added",function(t,e){var n=""+p(t)+!!e;this.xhrGuids&&!this.xhrGuids[n]&&(this.xhrGuids[n]=!0,this.totalCbs+=1)}),u.on("xhr-load-removed",function(t,e){var n=""+p(t)+!!e;this.xhrGuids&&this.xhrGuids[n]&&(delete this.xhrGuids[n],this.totalCbs-=1)}),u.on("addEventListener-end",function(t,e){e instanceof v&&"load"===t[0]&&u.emit("xhr-load-added",[t[1],t[2]],e)}),u.on("removeEventListener-end",function(t,e){e instanceof v&&"load"===t[0]&&u.emit("xhr-load-removed",[t[1],t[2]],e)}),u.on("fn-start",function(t,e,n){e instanceof v&&("onload"===n&&(this.onload=!0),("load"===(t[0]&&t[0].type)||this.onload)&&(this.xhrCbStart=a.now()))}),u.on("fn-end",function(t,e){this.xhrCbStart&&u.emit("xhr-cb-time",[a.now()-this.xhrCbStart,this.onload,e],e)}),u.on("fetch-before-start",function(t){function e(t,e){var n=!1;return e.newrelicHeader&&(t.set("newrelic",e.newrelicHeader),n=!0),e.traceContextParentHeader&&(t.set("traceparent",e.traceContextParentHeader),e.traceContextStateHeader&&t.set("tracestate",e.traceContextStateHeader),n=!0),n}var n,r=t[1]||{};"string"==typeof t[0]?n=t[0]:t[0]&&t[0].url?n=t[0].url:window.URL&&t[0]&&t[0]instanceof URL&&(n=t[0].href),n&&(this.parsedOrigin=s(n),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=f(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if("string"==typeof t[0]||window.URL&&t[0]&&t[0]instanceof URL){var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),e(o.headers,i)&&(this.dt=i),t.length>1?t[1]=o:t.push(o)}else t[0]&&t[0].headers&&e(t[0].headers,i)&&(this.dt=i)})}},{}],13:[function(t,e,n){var r={};e.exports=function(t){if(t in r)return r[t];var e=document.createElement("a"),n=window.location,i={};e.href=t,i.port=e.port;var o=e.href.split("://");!i.port&&o[1]&&(i.port=o[1].split("/")[0].split("@").pop().split(":")[1]),i.port&&"0"!==i.port||(i.port="https"===o[0]?"443":"80"),i.hostname=e.hostname||n.hostname,i.pathname=e.pathname,i.protocol=o[0],"/"!==i.pathname.charAt(0)&&(i.pathname="/"+i.pathname);var a=!e.protocol||":"===e.protocol||e.protocol===n.protocol,c=e.hostname===document.domain&&e.port===n.port;return i.sameOrigin=a&&(!e.hostname||c),"/"===i.pathname&&(r[t]=i),i}},{}],14:[function(t,e,n){function r(t,e){var n=t.responseType;return"json"===n&&null!==e?e:"arraybuffer"===n||"blob"===n||"json"===n?i(t.response):"text"===n||""===n||void 0===n?i(t.responseText):void 0}var i=t(16);e.exports=r},{}],15:[function(t,e,n){function r(){}function i(t,e,n){return function(){return o(t,[f.now()].concat(c(arguments)),e?null:this,n),e?void 0:this}}var o=t("handle"),a=t(24),c=t(25),s=t("ee").get("tracer"),f=t("loader"),u=NREUM;"undefined"==typeof window.newrelic&&(newrelic=u);var d=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],l="api-",p=l+"ixn-";a(d,function(t,e){u[e]=i(l+e,!0,"api")}),u.addPageAction=i(l+"addPageAction",!0),u.setCurrentRouteName=i(l+"routeName",!0),e.exports=newrelic,u.interaction=function(){return(new r).get()};var h=r.prototype={createTracer:function(t,e){var n={},r=this,i="function"==typeof e;return o(p+"tracer",[f.now(),t,n],r),function(){if(s.emit((i?"":"no-")+"fn-start",[f.now(),r,i],n),i)try{return e.apply(this,arguments)}catch(t){throw s.emit("fn-err",[arguments,this,t],n),t}finally{s.emit("fn-end",[f.now()],n)}}}};a("actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(t,e){h[e]=i(p+e)}),newrelic.noticeError=function(t,e){"string"==typeof t&&(t=new Error(t)),o("err",[t,f.now(),!1,e])}},{}],16:[function(t,e,n){e.exports=function(t){if("string"==typeof t&&t.length)return t.length;if("object"==typeof t){if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if("undefined"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!("undefined"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(e){return}}}},{}],17:[function(t,e,n){var r=0,i=navigator.userAgent.match(/Firefox[\/\s](\d+\.\d+)/);i&&(r=+i[1]),e.exports=r},{}],18:[function(t,e,n){function r(){return c.exists&&performance.now?Math.round(performance.now()):(o=Math.max((new Date).getTime(),o))-a}function i(){return o}var o=(new Date).getTime(),a=o,c=t(26);e.exports=r,e.exports.offset=a,e.exports.getLastTimestamp=i},{}],19:[function(t,e,n){function r(t){return!(!t||!t.protocol||"file:"===t.protocol)}e.exports=r},{}],20:[function(t,e,n){function r(t,e){var n=t.getEntries();n.forEach(function(t){"first-paint"===t.name?d("timing",["fp",Math.floor(t.startTime)]):"first-contentful-paint"===t.name&&d("timing",["fcp",Math.floor(t.startTime)])})}function i(t,e){var n=t.getEntries();n.length>0&&d("lcp",[n[n.length-1]])}function o(t){t.getEntries().forEach(function(t){t.hadRecentInput||d("cls",[t])})}function a(t){if(t instanceof h&&!w){var e=Math.round(t.timeStamp),n={type:t.type};e<=l.now()?n.fid=l.now()-e:e>l.offset&&e<=Date.now()?(e-=l.offset,n.fid=l.now()-e):e=l.now(),w=!0,d("timing",["fi",e,n])}}function c(t){d("pageHide",[l.now(),t])}if(!("init"in NREUM&&"page_view_timing"in NREUM.init&&"enabled"in NREUM.init.page_view_timing&&NREUM.init.page_view_timing.enabled===!1)){var s,f,u,d=t("handle"),l=t("loader"),p=t(23),h=NREUM.o.EV;if("PerformanceObserver"in window&&"function"==typeof window.PerformanceObserver){s=new PerformanceObserver(r);try{s.observe({entryTypes:["paint"]})}catch(m){}f=new PerformanceObserver(i);try{f.observe({entryTypes:["largest-contentful-paint"]})}catch(m){}u=new PerformanceObserver(o);try{u.observe({type:"layout-shift",buffered:!0})}catch(m){}}if("addEventListener"in document){var w=!1,v=["click","keydown","mousedown","pointerdown","touchstart"];v.forEach(function(t){document.addEventListener(t,a,!1)})}p(c)}},{}],21:[function(t,e,n){function r(){function t(){return e?15&e[n++]:16*Math.random()|0}var e=null,n=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&(e=r.getRandomValues(new Uint8Array(31)));for(var i,o="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",a="",c=0;c<o.length;c++)i=o[c],"x"===i?a+=t().toString(16):"y"===i?(i=3&t()|8,a+=i.toString(16)):a+=i;return a}function i(){return a(16)}function o(){return a(32)}function a(t){function e(){return n?15&n[r++]:16*Math.random()|0}var n=null,r=0,i=window.crypto||window.msCrypto;i&&i.getRandomValues&&Uint8Array&&(n=i.getRandomValues(new Uint8Array(31)));for(var o=[],a=0;a<t;a++)o.push(e().toString(16));return o.join("")}e.exports={generateUuid:r,generateSpanId:i,generateTraceId:o}},{}],22:[function(t,e,n){function r(t,e){if(!i)return!1;if(t!==i)return!1;if(!e)return!0;if(!o)return!1;for(var n=o.split("."),r=e.split("."),a=0;a<r.length;a++)if(r[a]!==n[a])return!1;return!0}var i=null,o=null,a=/Version\/(\S+)\s+Safari/;if(navigator.userAgent){var c=navigator.userAgent,s=c.match(a);s&&c.indexOf("Chrome")===-1&&c.indexOf("Chromium")===-1&&(i="Safari",o=s[1])}e.exports={agent:i,version:o,match:r}},{}],23:[function(t,e,n){function r(t){function e(){t(a&&document[a]?document[a]:document[i]?"hidden":"visible")}"addEventListener"in document&&o&&document.addEventListener(o,e,!1)}e.exports=r;var i,o,a;"undefined"!=typeof document.hidden?(i="hidden",o="visibilitychange",a="visibilityState"):"undefined"!=typeof document.msHidden?(i="msHidden",o="msvisibilitychange"):"undefined"!=typeof document.webkitHidden&&(i="webkitHidden",o="webkitvisibilitychange",a="webkitVisibilityState")},{}],24:[function(t,e,n){function r(t,e){var n=[],r="",o=0;for(r in t)i.call(t,r)&&(n[o]=e(r,t[r]),o+=1);return n}var i=Object.prototype.hasOwnProperty;e.exports=r},{}],25:[function(t,e,n){function r(t,e,n){e||(e=0),"undefined"==typeof n&&(n=t?t.length:0);for(var r=-1,i=n-e||0,o=Array(i<0?0:i);++r<i;)o[r]=t[e+r];return o}e.exports=r},{}],26:[function(t,e,n){e.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],ee:[function(t,e,n){function r(){}function i(t){function e(t){return t&&t instanceof r?t:t?f(t,s,a):a()}function n(n,r,i,o,a){if(a!==!1&&(a=!0),!p.aborted||o){t&&a&&t(n,r,i);for(var c=e(i),s=m(n),f=s.length,u=0;u<f;u++)s[u].apply(c,r);var l=d[y[n]];return l&&l.push([x,n,r,c]),c}}function o(t,e){g[t]=m(t).concat(e)}function h(t,e){var n=g[t];if(n)for(var r=0;r<n.length;r++)n[r]===e&&n.splice(r,1)}function m(t){return g[t]||[]}function w(t){return l[t]=l[t]||i(n)}function v(t,e){u(t,function(t,n){e=e||"feature",y[n]=e,e in d||(d[e]=[])})}var g={},y={},x={on:o,addEventListener:o,removeEventListener:h,emit:n,get:w,listeners:m,context:e,buffer:v,abort:c,aborted:!1};return x}function o(t){return f(t,s,a)}function a(){return new r}function c(){(d.api||d.feature)&&(p.aborted=!0,d=p.backlog={})}var s="nr@context",f=t("gos"),u=t(24),d={},l={},p=e.exports=i();e.exports.getOrSetContext=o,p.backlog=d},{}],gos:[function(t,e,n){function r(t,e,n){if(i.call(t,e))return t[e];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!1}),r}catch(o){}return t[e]=r,r}var i=Object.prototype.hasOwnProperty;e.exports=r},{}],handle:[function(t,e,n){function r(t,e,n,r){i.buffer([t],r),i.emit(t,e,n)}var i=t("ee").get("handle");e.exports=r,r.ee=i},{}],id:[function(t,e,n){function r(t){var e=typeof t;return!t||"object"!==e&&"function"!==e?-1:t===window?0:a(t,o,function(){return i++})}var i=1,o="nr@id",a=t("gos");e.exports=r},{}],loader:[function(t,e,n){function r(){if(!E++){var t=b.info=NREUM.info,e=p.getElementsByTagName("script")[0];if(setTimeout(f.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&e))return f.abort();s(y,function(e,n){t[e]||(t[e]=n)});var n=a();c("mark",["onload",n+b.offset],null,"api"),c("timing",["load",n]);var r=p.createElement("script");r.src="https://"+t.agent,e.parentNode.insertBefore(r,e)}}function i(){"complete"===p.readyState&&o()}function o(){c("mark",["domContent",a()+b.offset],null,"api")}var a=t(18),c=t("handle"),s=t(24),f=t("ee"),u=t(22),d=t(19),l=window,p=l.document,h="addEventListener",m="attachEvent",w=l.XMLHttpRequest,v=w&&w.prototype;if(d(l.location)){NREUM.o={ST:setTimeout,SI:l.setImmediate,CT:clearTimeout,XHR:w,REQ:l.Request,EV:l.Event,PR:l.Promise,MO:l.MutationObserver};var g=""+location,y={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-1208.min.js"},x=w&&v&&v[h]&&!/CriOS/.test(navigator.userAgent),b=e.exports={offset:a.getLastTimestamp(),now:a,origin:g,features:{},xhrWrappable:x,userAgent:u};t(15),t(20),p[h]?(p[h]("DOMContentLoaded",o,!1),l[h]("load",r,!1)):(p[m]("onreadystatechange",i),l[m]("onload",r)),c("mark",["firstbyte",a.getLastTimestamp()],null,"api");var E=0}},{}],"wrap-function":[function(t,e,n){function r(t,e){function n(e,n,r,s,f){function nrWrapper(){var o,a,u,l;try{a=this,o=d(arguments),u="function"==typeof r?r(o,a):r||{}}catch(p){i([p,"",[o,a,s],u],t)}c(n+"start",[o,a,s],u,f);try{return l=e.apply(a,o)}catch(h){throw c(n+"err",[o,a,h],u,f),h}finally{c(n+"end",[o,a,l],u,f)}}return a(e)?e:(n||(n=""),nrWrapper[l]=e,o(e,nrWrapper,t),nrWrapper)}function r(t,e,r,i,o){r||(r="");var c,s,f,u="-"===r.charAt(0);for(f=0;f<e.length;f++)s=e[f],c=t[s],a(c)||(t[s]=n(c,u?s+r:r,i,s,o))}function c(n,r,o,a){if(!h||e){var c=h;h=!0;try{t.emit(n,r,o,e,a)}catch(s){i([s,n,r,o],t)}h=c}}return t||(t=u),n.inPlace=r,n.flag=l,n}function i(t,e){e||(e=u);try{e.emit("internal-error",t)}catch(n){}}function o(t,e,n){if(Object.defineProperty&&Object.keys)try{var r=Object.keys(t);return r.forEach(function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){return t[n]=e,e}})}),e}catch(o){i([o],n)}for(var a in t)p.call(t,a)&&(e[a]=t[a]);return e}function a(t){return!(t&&t instanceof Function&&t.apply&&!t[l])}function c(t,e){var n=e(t);return n[l]=t,o(t,n,u),n}function s(t,e,n){var r=t[e];t[e]=c(r,n)}function f(){for(var t=arguments.length,e=new Array(t),n=0;n<t;++n)e[n]=arguments[n];return e}var u=t("ee"),d=t(25),l="nr@original",p=Object.prototype.hasOwnProperty,h=!1;e.exports=r,e.exports.wrapFunction=c,e.exports.wrapInPlace=s,e.exports.argsToArray=f},{}]},{},["loader",2,12,4,3]);</script> <title>Explore featured case studies | Drupal.org</title> <link type="text/css" rel="stylesheet" href="/web/20210322130519cs_/https://www.drupal.org/files/advagg_css/css__FN2RTiB3W78YZgXvD7kGMoWo3ufXBV345Z1UG8yvZFE__XMJmLtgfFjPsRFf-TTMt1ejFpXBEo_Fip05xPtaPoAE__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all"/> <link type="text/css" rel="stylesheet" href="/web/20210322130519cs_/https://www.drupal.org/files/advagg_css/css__eFKSCujfWyJYO8J-qSi6T_n29lROS8isvrxzANeHaAY__D_EUHDAfEQdxcLiSDY7hREUWkG1Ge56_h2z3Er8V188__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all"/> <link type="text/css" rel="stylesheet" href="/web/20210322130519cs_/https://www.drupal.org/files/advagg_css/css__mXUsFOkFX1Vp3cPaBtPrMNLiyy4rOzIAVz7DppnovsY__4a32sD5wTTMzrJf7XqA8yck7wVaHdAmb-RLMBilVXyY__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all"/> <link type="text/css" rel="stylesheet" href="/web/20210322130519cs_/https://www.drupal.org/files/advagg_css/css__WF0PRotZAhCcl0aJjY5W2LYj8UwiYuB2dZEFluOh3Tc__FviX13FUB-Ppa2XB29BUIJQZ1Wg-F5XiDE7XD5y7mjQ__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all"/> <link type="text/css" rel="stylesheet" href="/web/20210322130519cs_/https://www.drupal.org/files/advagg_css/css__QPp1snPjYt_xYr0c_V0IORcEElkIUBBBrvOB4ZE0Gnw__3H_fzcy7Zxh3IXVNNbFlPoVenr9Pr5aCDUI9oVWZAYk__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.css" media="all"/> </head> <body class="html not-front not-logged-in no-sidebars page-case-studies drupalorg-site-main new-style"> <div id="skip-link" tabindex="-1"> <a class="element-invisible element-focusable" href="#content">Skip to main content</a> <a class="element-invisible element-focusable skip-link-search" href="#search-block-form">Skip to search</a> </div> <div class="region region-page-top"> <noscript aria-hidden="true"><iframe src="https://web.archive.org/web/20210322130519if_/https://www.googletagmanager.com/ns.html?id=GTM-W36H8DW" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <div id="drupalorg-crosssite-gdpr">Can we use first and third party cookies and web beacons to <a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/terms">understand our audience, and to tailor promotions you see</a>?<br><button class="yes">Yes, please</button><button class="no">No, do not track me</button></div> </div> <div id="nav-header"> <div class="menu-nav"> <a class="nav-btn" id="nav-open-btn" href="#block-system-main-menu"><img src="/web/20210322130519im_/https://www.drupal.org/sites/all/themes/bluecheese/images/icon-w-menu.svg" alt="Main menu"></a> </div> <nav id="navigation-inner" class="container-12" role="navigation"> <div class="region region-navigation"> <div id="block-system-main-menu" class="block block-system block-menu"> <div class="block-inner"> <div class="content"> <div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/home" title="Drupal.org home page">Drupal.org home</a></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/about" title="">Why Drupal?</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/developers" title="">For developers</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/marketers" title="Why marketers should choose Drupal for their ambitious digital experiences">For marketers</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/agencies" title="Learn why agencies are betting their future on Drupal">For agencies</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/case-studies" title="View case studies to see how your peers have built success on Drupal" class="active">Case studies</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/about" title="Learn about Drupal">About Drupal</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/about/9" title="Prepare for Drupal 9">Drupal 9</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/about/in-the-news" title="">In the news</a></li> </ul></div></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/download" title="Build your solution on Drupal">Build</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/download" title="Download and Extend Drupal">Download & Extend</a></li> <li class="leaf"><a href="https://web.archive.org/web/20210322130519/https://git.drupalcode.org/project/drupal" title="">Browse Repository</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/documentation" title="">Documentation</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/project/modules" title="Find modules to extend Drupal to meet any need">Modules</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/project/themes" title="Browse themes as a starting point for making your Drupal site your own">Themes</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/project/distributions" title="Use a distribution to start with a version of Drupal customized to purpose">Distributions</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/project/issues" title="Dive into the issues queues and contribute back to Drupal">Issue queues</a></li> </ul></div></li> <li class="expanded active-trail"><a href="/web/20210322130519/https://www.drupal.org/industries" title="Examples of solutions built on Drupal" class="active-trail">Solutions</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/industries" title="Learn why Drupal is the best solution for your industry">By industry</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/features" title="">By feature</a></li> <li class="leaf active-trail"><a href="/web/20210322130519/https://www.drupal.org/case-studies" title="View Drupal success stories" class="active-trail active">Case studies</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/hosting" title="Find a solution for hosting your Drupal application">For hosting</a></li> </ul></div></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/drupal-services" title="Buy Drupal Products and Services">Services</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/drupal-services" title="View the Drupal service provider marketplace">Marketplace</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/hosting" title="Find trusted Drupal hosting providers">Hosting</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/training" title="Find expert Drupal training">Training</a></li> </ul></div></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/community" title="Drupal Community">Community</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/community" title="View the community portal and find all the ways you can contribute to Drupal">Portal</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/community/contributor-guide" title="">Contributor guide</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/organizations" title="Learn about the organizations that are part of the Drupal ecosystem">Organizations</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/forum" title="Find support or chat with the community on the forum">Forum</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/community/agency-marketing/promotedrupal" title="">Promote Drupal</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/case-studies/community" title="">Community Case Studies</a></li> <li class="leaf"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/swag?utm_source=drupalorg&utm_medium=banner&utm_campaign=drupal_swag_shop_2020_09_17" title="Purchase Drupal merchandise and be the coolest kid on the block">Drupal Swag</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/about/core" title="">Core Development & Strategic Initiatives</a></li> </ul></div></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/documentation" title="Resources to help you on your Drupal journey">Resources</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/docs/user_guide/en/index.html" title="The Drupal 8 user guide will get you up to speed in no time">User guide</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/documentation" title="Drupal Documentation">Documentation</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/support" title="Support for using Drupal">Support</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/security" title="Find information about security releases for Drupal">Security</a></li> <li class="leaf"><a href="https://web.archive.org/web/20210322130519/https://jobs.drupal.org/" title="Drupal Jobs">Jobs</a></li> <li class="leaf"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/" title="Learn about official Drupal Association events">Events</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/subscribe" title="">Newsletter</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/news" title="News about the Drupal ecosystem">Project News</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/association/supporters/press" title="News and press releases from Drupal Association supporting partners">Partner Press</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/about/9" title="Prepare for Drupal 9">Drupal 9</a></li> </ul></div></li> <li class="expanded"><a href="/web/20210322130519/https://www.drupal.org/association" title="About the Drupal Association - the non-profit that supports the Drupal project">Give</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/association" title="Learn about the Drupal Association - the nonprofit that supports the Drupal project">Drupal Association</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/association/supporters" title="Learn more about the organizations that support the Drupal Association and our mission">Supporters</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/promotedrupal" title="">Promote Drupal</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/association/support" title="We depend on you to move the Drupal project forward">Join us</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/community/contributor-guide" title="">Contributor guide</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/drupalorg" title="">About Drupal.org</a></li> </ul></div></li> <li class="expanded"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/" title="Find Drupal Events around the world, from the official DrupalCons, to community Camps and Meet-Ups">Events</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/drupalcon2021/" title="">DrupalCon North America</a></li> <li class="leaf"><a href="/web/20210322130519/https://www.drupal.org/community/events" title="">Community Events</a></li> <li class="leaf"><a href="https://web.archive.org/web/20210322130519/https://www.drupical.com/" title="A calendar of Drupal events around the world.">Drupical</a></li> <li class="last leaf"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/drupalfest2021" title="DrupalCon Fest | April 1-30, 2020">DrupalFest</a></li> </ul></div></li> <li class="last expanded"><a href="/web/20210322130519/https://www.drupal.org/try-drupal" title="Try Drupal">Try Drupal</a><div class="menu-block"><ul class="menu button"><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/try-drupal" title="Demo Drupal online with a Drupal platform partner">Demo online</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/download" title="">Download</a></li> </ul></div></li> </ul></div><a class="close-btn" href="#top">Return to content</a> </div> </div> </div> <div id="block-search-form" class="block block-search"> <div class="block-inner"> <div class="content"> <form action="/web/20210322130519/https://www.drupal.org/case-studies" method="post" id="search-block-form" accept-charset="UTF-8"><div><div class="container-inline"> <h2 class="element-invisible">Search form</h2> <div class="form-item form-type-textfield form-item-search-block-form"> <label class="element-invisible" for="edit-search-block-form--2">Search </label> <input placeholder="Search…" type="text" id="edit-search-block-form--2" name="search_block_form" value="" size="15" maxlength="128" class="form-text"/> </div> <div class="form-actions form-wrapper" id="edit-actions"><input alt="Search" type="image" id="edit-submit" name="submit" value="Search" src="/web/20210322130519im_/https://www.drupal.org/sites/all/themes/bluecheese/images/icon-w-search.svg" class="form-submit"/></div><input type="hidden" name="form_build_id" value="form-91mHUaDKbB1FalSWTnGU7nKPeYnVCbHX1L6LAjBmGvI"/> <input type="hidden" name="form_id" value="search_block_form"/> </div> </div></form> </div> </div> </div> <div id="block-system-user-menu" class="block block-system block-menu"> <div class="block-inner"> <div class="content"> <div class="menu-block"><ul class="menu"><li class="button default"><a href="#block-system-user-menu"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/sites/all/themes/bluecheese/images/icon-w-user.svg" alt="Log in, view profile, and more"></a><ul><li class="first leaf"><a href="/web/20210322130519/https://www.drupal.org/user/login?destination=case-studies" title="">Log in</a></li> <li class="last leaf"><a href="/web/20210322130519/https://www.drupal.org/user/register?destination=case-studies" title="">Create account</a></li> </ul></li></ul></div> </div> </div> </div> </div> </nav> </div> <div id="header" class="clearfix"> <div id="header-inner" class="container-12 clearfix"> <div id="header-left"> <div id="site-name"><a href="/web/20210322130519/https://www.drupal.org/" title="Drupal"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/drupal-wordmark.svg" alt="Drupal"/></a></div> </div> <div id="header-right"> </div> </div> </div> <div id="banner"> <div class="region region-banner"> <div id="block-drupalorg-announcements" class="block block-drupalorg"> <div class="block-inner"> <div class="content"> <div class="announcement">Celebrate 20 years of Drupal with us! April is DrupalFest, a month-long series of virtual events focused on community, contribution, and the positive impacts made possible with Drupal.</div> <div class="cta"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/drupalfest2021/events" class="global-announce-banner drupalconNA-2021-sponsorship">Add your DrupalFest event to the calendar</a></div> </div> </div> </div> </div> </div> <div id="page" class="clearfix"> <div id="page-heading"> <div id="page-title-tools" class="container-12 clearfix" role="navigation"> <div class="page-title-wrapper"> <h1 id="page-title" class="title">Explore featured case studies</h1> </div> </div> <!-- /#page-title-tools --> <div class="breadbox"></div> </div> <!-- /#page-heading --> <div class="container-12 page-inner"> <div id="main" role="main"> <div id="content" class="clearfix"> <div id="content-inner" class="clearfix"> <div class="region region-content"> <div id="block-system-main" class="block block-system"> <div class="block-inner"> <div class="content"> <div class="view view-drupalorg-casestudies view-id-drupalorg_casestudies view-display-id-fs_landing_page case-studies-grid view-dom-id-31cca89c4ecdf6f837b5d5b862372b53"> <div class="view-header"> <p>Achieve your client's business goals with Drupal digital experiences that proliferate their brand, fosters engagement, and drives conversions. Customizable and scalable to match your client's ambition. Build the dream solution using Drupal's API-first architecture and third party integrations. Gain the power of the largest open source community.</p> </div> <div class="view-filters"> <form class="ctools-auto-submit-full-form" action="/web/20210322130519/https://www.drupal.org/case-studies" method="get" id="views-exposed-form-drupalorg-casestudies-fs-landing-page" accept-charset="UTF-8"><div><div class="views-exposed-form"> <div class="views-exposed-widgets clearfix"> <div id="edit-secondary-wrapper" class="views-exposed-widget views-widget-filter-secondary"> <div class="views-widget"> <fieldset class="collapsible collapsed form-wrapper" id="edit-secondary"><legend><span class="fieldset-legend">Filter by version and sector</span></legend><div class="fieldset-wrapper"><div class="bef-secondary-options"><div class="form-item form-type-select form-item-version"> <label for="edit-version">Version </label> <div class="form-checkboxes bef-select-as-checkboxes"><div class="bef-checkboxes"><div class="form-item form-type-bef-checkbox form-item-edit-version-120"> <input type="checkbox" name="version[]" id="edit-version-120" value="120"/> <label class="option" for="edit-version-120">Drupal 7.x</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-version-20236"> <input type="checkbox" name="version[]" id="edit-version-20236" value="20236"/> <label class="option" for="edit-version-20236">Drupal 8.x</label> </div> </div></div> </div> <div class="form-item form-type-select form-item-sectors"> <label for="edit-sectors">Sectors </label> <div class="form-checkboxes bef-select-as-checkboxes"><div class="bef-checkboxes"><div class="form-item form-type-bef-checkbox form-item-edit-sectors-170775"> <input type="checkbox" name="sectors[]" id="edit-sectors-170775" value="170775"/> <label class="option" for="edit-sectors-170775">Agriculture</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25802"> <input type="checkbox" name="sectors[]" id="edit-sectors-25802" value="25802"/> <label class="option" for="edit-sectors-25802">Arts</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25354"> <input type="checkbox" name="sectors[]" id="edit-sectors-25354" value="25354"/> <label class="option" for="edit-sectors-25354">Banking and Financial</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-37368"> <input type="checkbox" name="sectors[]" id="edit-sectors-37368" value="37368"/> <label class="option" for="edit-sectors-37368">Beauty and Fashion</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-26556"> <input type="checkbox" name="sectors[]" id="edit-sectors-26556" value="26556"/> <label class="option" for="edit-sectors-26556">Blogging</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25800"> <input type="checkbox" name="sectors[]" id="edit-sectors-25800" value="25800"/> <label class="option" for="edit-sectors-25800">Community</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25136"> <input type="checkbox" name="sectors[]" id="edit-sectors-25136" value="25136"/> <label class="option" for="edit-sectors-25136">E-Commerce</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24656"> <input type="checkbox" name="sectors[]" id="edit-sectors-24656" value="24656"/> <label class="option" for="edit-sectors-24656">Education</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24658"> <input type="checkbox" name="sectors[]" id="edit-sectors-24658" value="24658"/> <label class="option" for="edit-sectors-24658">Enterprise</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25316"> <input type="checkbox" name="sectors[]" id="edit-sectors-25316" value="25316"/> <label class="option" for="edit-sectors-25316">Entertainment</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24660"> <input type="checkbox" name="sectors[]" id="edit-sectors-24660" value="24660"/> <label class="option" for="edit-sectors-24660">Government</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25214"> <input type="checkbox" name="sectors[]" id="edit-sectors-25214" value="25214"/> <label class="option" for="edit-sectors-25214">Healthcare</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25126"> <input type="checkbox" name="sectors[]" id="edit-sectors-25126" value="25126"/> <label class="option" for="edit-sectors-25126">Legal Industry</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-26678"> <input type="checkbox" name="sectors[]" id="edit-sectors-26678" value="26678"/> <label class="option" for="edit-sectors-26678">Manufacturing and Energy</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24772"> <input type="checkbox" name="sectors[]" id="edit-sectors-24772" value="24772"/> <label class="option" for="edit-sectors-24772">Media</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25140"> <input type="checkbox" name="sectors[]" id="edit-sectors-25140" value="25140"/> <label class="option" for="edit-sectors-25140">Music</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24496"> <input type="checkbox" name="sectors[]" id="edit-sectors-24496" value="24496"/> <label class="option" for="edit-sectors-24496">Non-profit</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-24662"> <input type="checkbox" name="sectors[]" id="edit-sectors-24662" value="24662"/> <label class="option" for="edit-sectors-24662">Publishing</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25298"> <input type="checkbox" name="sectors[]" id="edit-sectors-25298" value="25298"/> <label class="option" for="edit-sectors-25298">Real Estate</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25412"> <input type="checkbox" name="sectors[]" id="edit-sectors-25412" value="25412"/> <label class="option" for="edit-sectors-25412">Religious organizations</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-26674"> <input type="checkbox" name="sectors[]" id="edit-sectors-26674" value="26674"/> <label class="option" for="edit-sectors-26674">Retail and Distribution</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25406"> <input type="checkbox" name="sectors[]" id="edit-sectors-25406" value="25406"/> <label class="option" for="edit-sectors-25406">Small business</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25260"> <input type="checkbox" name="sectors[]" id="edit-sectors-25260" value="25260"/> <label class="option" for="edit-sectors-25260">Social Networking</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25138"> <input type="checkbox" name="sectors[]" id="edit-sectors-25138" value="25138"/> <label class="option" for="edit-sectors-25138">Sports</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25562"> <input type="checkbox" name="sectors[]" id="edit-sectors-25562" value="25562"/> <label class="option" for="edit-sectors-25562">Startups</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25242"> <input type="checkbox" name="sectors[]" id="edit-sectors-25242" value="25242"/> <label class="option" for="edit-sectors-25242">Technology</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25302"> <input type="checkbox" name="sectors[]" id="edit-sectors-25302" value="25302"/> <label class="option" for="edit-sectors-25302">Telecommunications</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-25212"> <input type="checkbox" name="sectors[]" id="edit-sectors-25212" value="25212"/> <label class="option" for="edit-sectors-25212">Travel and Hospitality</label> </div> <div class="form-item form-type-bef-checkbox form-item-edit-sectors-27142"> <input type="checkbox" name="sectors[]" id="edit-sectors-27142" value="27142"/> <label class="option" for="edit-sectors-27142">Urban planning</label> </div> </div></div> </div> </div></div></fieldset> </div> </div> <div class="views-exposed-widget views-submit-button"> <input class="ctools-use-ajax ctools-auto-submit-click js-hide form-submit" type="submit" id="edit-submit-drupalorg-casestudies" name="" value="Apply"/> </div> </div> </div> </div></form> </div> <div class="view-content"> <div class="views-row views-row-1 views-row-odd views-row-first"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/princeton-university-school-of-public-and-international-affairs"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/spia-mockup.png?itok=FbNh-rbu" width="300" height="198" alt="Princeton School of Public and International Affairs desktop and mobile screens"/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/princeton-university-school-of-public-and-international-affairs">Princeton University School of Public and...</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/evolving-web">Evolving Web</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=194424" class="active">Drupal 9.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=24656">Education</a></span> </span> </div> <div class="views-row views-row-2 views-row-even"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/acquiacom-redesign"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/pexels-fauxels-3183181_0.jpg?itok=SZEUJ5Gg" width="300" height="198" alt="People using Acquia"/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/acquiacom-redesign">Acquia.com Redesign</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/third-and-grove">Third and Grove</a></span> </span> </div> <div class="views-row views-row-3 views-row-odd"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/the-carlyle-group"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/pexels-daria-shevtsova-705674-scaled.jpg?itok=o9xF4RGc" width="300" height="198" alt="People at Carlyle"/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/the-carlyle-group">The Carlyle Group</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/third-and-grove">Third and Grove</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=25354">Banking and Financial</a></span> </span> </div> <div class="views-row views-row-4 views-row-even"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/cloudhealth-by-vmware"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/1602049618188.jpg?itok=5o9Qay1u" width="300" height="198" alt="Man with pets using VMware"/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/cloudhealth-by-vmware">CloudHealth by VMware</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/third-and-grove">Third and Grove</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=194424" class="active">Drupal 9.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=25242">Technology</a></span> </span> </div> <div class="views-row views-row-5 views-row-odd"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/simsite-drupal"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/simgroep.png?itok=t9fpQ4Gq" width="300" height="198" alt="SIMgroep home page, running on SIMsite Drupal"/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/simsite-drupal">SIMsite Drupal</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/sim">SIM</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=20236" class="active">Drupal 8.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=24660">Government</a></span> </span> </div> <div class="views-row views-row-6 views-row-even"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/kettering-university-accessibility-minded-drupal-redesign"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/Screen%20Shot%202020-12-04%20at%209.24.39%20AM.png?itok=gFsBTleg" width="300" height="198" alt="New Drupal homepage for Kettering University "/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/kettering-university-accessibility-minded-drupal-redesign">Kettering University: Accessibility-Minded...</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/mediacurrent">Mediacurrent</a>, <a href="/web/20210322130519/https://www.drupal.org/pantheon">Pantheon</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=20236" class="active">Drupal 8.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=24656">Education</a></span> </span> </div> <div class="views-row views-row-7 views-row-odd"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/brand-usa-inspiring-adventure-with-drupal"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/Screen%20Shot%202020-11-11%20at%208.54.01%20AM.png?itok=5Bw8IVIc" width="300" height="198" alt=""/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/brand-usa-inspiring-adventure-with-drupal"> Brand USA: Inspiring Adventure With Drupal </a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/mediacurrent">Mediacurrent</a>, <a href="/web/20210322130519/https://www.drupal.org/acquia">Acquia</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=20236" class="active">Drupal 8.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=25212">Travel and Hospitality</a></span> </span> </div> <div class="views-row views-row-8 views-row-even"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/reagan-library-redesign"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/layout-builder_0.png?itok=i5AXdRaM" width="300" height="198" alt=""/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/reagan-library-redesign">Reagan Library Redesign</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/inclind-inc">Inclind Inc</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=20236" class="active">Drupal 8.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=24660">Government</a></span> </span> </div> <div class="views-row views-row-9 views-row-odd views-row-last"> <div class="views-field views-field-field-mainimage"> <div class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-study/pivoting-student-art-shows-online-during-covid-19"><img src="https://web.archive.org/web/20210322130519im_/https://www.drupal.org/files/styles/case198/public/RISDPP-Graduate-Show-2020.jpg?itok=3DLe_Ikb" width="300" height="198" alt=""/></a></div> </div> <div> <h3><a href="/web/20210322130519/https://www.drupal.org/case-study/pivoting-student-art-shows-online-during-covid-19">Pivoting Student Art Shows Online during COVID-...</a></h3> </div> <span class="views-field views-field-field-case-organizations"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/oomph-inc">Oomph, Inc.</a>, <a href="/web/20210322130519/https://www.drupal.org/acquia">Acquia</a></span> </span> , <span class="views-field views-field-term-node-tid"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?version%5B%5D=20236" class="active">Drupal 8.x</a></span> </span> , <span class="views-field views-field-term-node-tid-1"> <span class="field-content"><a href="/web/20210322130519/https://www.drupal.org/case-studies?sectors%5B%5D=24656">Education</a></span> </span> </div> </div> <h2 class="element-invisible">Pages</h2><div class="item-list"><ul class="pager"><li class="pager-current first">1</li> <li class="pager-item"><a title="Go to page 2" href="/web/20210322130519/https://www.drupal.org/case-studies?page=1">2</a></li> <li class="pager-item"><a title="Go to page 3" href="/web/20210322130519/https://www.drupal.org/case-studies?page=2">3</a></li> <li class="pager-item"><a title="Go to page 4" href="/web/20210322130519/https://www.drupal.org/case-studies?page=3">4</a></li> <li class="pager-item"><a title="Go to page 5" href="/web/20210322130519/https://www.drupal.org/case-studies?page=4">5</a></li> <li class="pager-item"><a title="Go to page 6" href="/web/20210322130519/https://www.drupal.org/case-studies?page=5">6</a></li> <li class="pager-item"><a title="Go to page 7" href="/web/20210322130519/https://www.drupal.org/case-studies?page=6">7</a></li> <li class="pager-item"><a title="Go to page 8" href="/web/20210322130519/https://www.drupal.org/case-studies?page=7">8</a></li> <li class="pager-item"><a title="Go to page 9" href="/web/20210322130519/https://www.drupal.org/case-studies?page=8">9</a></li> <li class="pager-ellipsis">…</li> <li class="pager-next"><a title="Go to next page" href="/web/20210322130519/https://www.drupal.org/case-studies?page=1">next ›</a></li> <li class="pager-last last"><a title="Go to last page" href="/web/20210322130519/https://www.drupal.org/case-studies?page=23">last »</a></li> </ul></div> </div> </div> </div> </div> </div> </div> </div> <!-- /#content --> </div> <!-- /#column-left --> </div> </div> <!-- /#page --> <div id="footer" role="contentinfo"> <div class="region region-footer"> <div id="block-drupalorg-crosssite-drupalorg-footer" class="block block-drupalorg-crosssite"> <div class="block-inner"> <div class="content"> <h4 class="element-invisible">News items</h4><ul class="drupal-news"><li class="0 first"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/news">News</a></li> <li class="1"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/planet" title="News from Drupal community members">Planet Drupal</a></li> <li class="2"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/about/media-kit/social-media" title="Drupal on social media">Social media</a></li> <li class="3"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/subscribe">Sign up for Drupal news</a></li> <li class="4"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/security" title="Announcements from the Drupal Security Team">Security advisories</a></li> <li class="5 last"><a href="https://web.archive.org/web/20210322130519/https://jobs.drupal.org/" title="Drupal Jobs">Jobs</a></li> </ul><h4 class="element-invisible">Our community</h4><ul class="community"><li class="0 first"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/community">Community</a></li> <li class="1"><span><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/drupal-services" title="People and organizations offering Drupal services">Services</a>, <a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/training" title="People and organizations offering Drupal training">Training</a> & <a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/hosting" title="Organizations offering Drupal hosting">Hosting</a></span></li> <li class="2"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/community/contributor-guide">Contributor guide</a></li> <li class="3"><a href="https://web.archive.org/web/20210322130519/https://groups.drupal.org/groups" title="groups.drupal.org">Groups & meetups</a></li> <li class="4"><a href="https://web.archive.org/web/20210322130519/https://events.drupal.org/" title="Upcoming and past DrupalCons">DrupalCon</a></li> <li class="5 last"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/dcoc" title="Drupal code of conduct">Code of conduct</a></li> </ul><h4 class="element-invisible">Documentation</h4><ul class="get-started"><li class="0 first"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/documentation" title="Documentation for working with Drupal">Documentation</a></li> <li class="1"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/docs">Drupal Guide</a></li> <li class="2"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/docs/user_guide/en/index.html">Drupal User Guide</a></li> <li class="3"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/documentation/develop">Developer docs</a></li> <li class="4 last"><a href="https://web.archive.org/web/20210322130519/https://api.drupal.org/" title="Drupal API reference">API.Drupal.org</a></li> </ul><h4 class="element-invisible">Drupal code base</h4><ul class="download-extend"><li class="0 first"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/download">Download & Extend</a></li> <li class="1"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/project/drupal" title="Download the latest version of the Drupal software">Drupal core</a></li> <li class="2"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/project/project_module" title="Download add-on features and functionality">Modules</a></li> <li class="3"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/project/project_theme" title="Download pre-designed styles for Drupal">Themes</a></li> <li class="4 last"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/project/project_distribution" title="Download a pre-packaged Drupal site">Distributions</a></li> </ul><h4 class="element-invisible">Governance of community</h4><ul class="about"><li class="0 first"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/about">About</a></li> <li class="1"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/about/features/accessibility" title="Our committment to accessibility">Web accessibility</a></li> <li class="2"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/association" title="About the Drupal Association">Drupal Association</a></li> <li class="3"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/drupalorg" title="About Drupal.org">About Drupal.org</a></li> <li class="4"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/terms" title="Drupal.org terms of service">Terms of service</a></li> <li class="5 last"><a href="https://web.archive.org/web/20210322130519/https://www.drupal.org/privacy" title="Drupal.org privacy policy">Privacy policy</a></li> </ul> </div> </div> </div> <div id="block-block-77" class="block block-block"> <div class="block-inner"> <div class="content"> <p>Drupal is a <a href="https://web.archive.org/web/20210322130519/http://drupal.com/trademark">registered trademark</a> of <a href="https://web.archive.org/web/20210322130519/https://dri.es/">Dries Buytaert</a>.</p> </div> </div> </div> </div> </div> <div class="region region-page-bottom"> <script type="text/javascript"> (function(){ window._pxAppId = 'PXVnPBBfwe'; window._pxParam2 = ''; window._pxParam3 = '0'; var p = document.getElementsByTagName('script')[0], s = document.createElement('script'); s.async = 1; s.src = '/VnPBBfwe/init.js'; p.parentNode.insertBefore(s,p); }()); </script> <noscript> <div style="position:fixed; top:0; left:0; display:none" width="1" height="1"> <img src="/web/20210322130519im_/https://www.drupal.org/VnPBBfwe/xhr/api/v1/collector/noScript.gif?appId=PXVnPBBfwe"> </div> </noscript> </div> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__B0FBwiP97ZnD38IFraZus4upS4KVkMXI3ou0fJ2ZXGA__pPDESRJz9GHsxqQIwQ_V8xnFYEH5jipG2eicsfrdWCs__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <!--[if lte IE 9]> <script type="text/javascript" src="/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js#ie9-" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <![endif]--> <!--[if gt IE 9]> <script type="text/javascript" src="/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js#ie10+" defer="defer" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <![endif]--> <!--[if !IE]><!--> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__79M6UrZjAw3oNGnUjsWip12JsvnUZmJGA3h9LI0kuzE__J0sbXAJNry2-C_ZL2xd0RdVuzwTLvwN-UisIv5RNCvU__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer" onload="if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(true);}"></script> <!--<![endif]--> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__pqoYaVR8NVhof-vNXe50j2TKhFv__IihVag_h4G6kus__B4mbn4wICLQjWm1m3-z1kw8F1FtP0cDAHKp00Xy_-88__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__H5AFmq1RrXKsrazzPq_xPQPy4K0wUKqecPjczzRiTgQ__Gnv3ZTafk9EeOiFxo-EtnyI4C4VvBtyZ1MDogxDnRm0__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer" onload=" function advagg_mod_1() { // Count how many times this function is called. advagg_mod_1.count = ++advagg_mod_1.count || 1; try { if (advagg_mod_1.count <= 40) { init_drupal_core_settings(); // Set this to 100 so that this function only runs once. advagg_mod_1.count = 100; } } catch(e) { if (advagg_mod_1.count >= 40) { // Throw the exception if this still fails after running 40 times. throw e; } else { // Try again in 1 ms. window.setTimeout(advagg_mod_1, 1); } } } function advagg_mod_1_check() { if (window.init_drupal_core_settings && window.jQuery && window.Drupal) { advagg_mod_1(); } else { window.setTimeout(advagg_mod_1_check, 1); } } advagg_mod_1_check();"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__Oc0wwB7MVRfxtYw6EQM7d9sXj9PAQePoWSzQJ0uTk6c__iXqOGoaPhZHCPEspUr5BC8BwOx5P8B11xv7VOhoUii8__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__FabcJ6qluktliDejymsuV-FqaN_HyMKGe93c2rO9Ky0__el1ZLGkKneOoCS6OWa01WHuIEsTsXZ46MRLCF390Fbw__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__ylcODMPWo_13MLom5ZqWGQsJNZKFh4uV-YcKFVTNVmY__udl9eol5cfcZrwikn8Dwm7QH7SvVG2cLtO8U9MwiAl0__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__xNXZEl6CREO_N4cX50nXAG3o3PPW1f2SzBBHY8rEKV8__svJATv4KBwkXbFf6a6nXR_L4RMKNoXb4MOMwFfwLR64__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__ENYUZMe5BHbMK8_pF3i18y1CtuMx_ItPRfjUOF7vUds__MXaxQPtP7z2LRCIe-IOxTRyNSvHNhJSb9SX1jpwq-Z8__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__WFJNihWrxQ37cYEPzvI4tDQIc9hifVhYc4SjTGlrkIY__8TiqPpbxPuVztHIsi70uvtVzznVy6WYJe7ErIjY6u8k__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__tASCQmKGymVQ9jc0lY_wx2QCnJOg1WFNWXr17OuY0j4__CmdUotmn0ZtOM0hSQ12AfXj87XYZQBfybLIDfKctM2M__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__GwnGO64j2EDCU8ggcnWe721eAELuDNG4SV84TRM-cIY__K1My0I9gW2ejdd7EH25qsci0td4X2aqrWL21loHd5f8__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__pLKQd4r7OrHglE7Qkqw53K2UXCqQdhqQ9v0cz7hMCQY__OErfYuQdGbFHcCoLoUW_ESSvaumApNojzjJit8-2xcw__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__hHUWFbMAa11eJtx5V0ym9o0YBsB1udk34qUT5wr1ihI__5kTy2kcrlFdXy9f69QYhgG-WnC2ajOQE_jJCGTFhQv8__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- function init_drupal_core_settings() {jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","ajaxPageState":{"theme":"bluecheese","theme_token":"yW7eo6ZopSrT_ZWhbBtzvfxyj4KyzAgXtFjBy_tgy-A"},"colorbox":{"transition":"elastic","speed":"100","opacity":"0.85","slideshow":false,"slideshowAuto":true,"slideshowSpeed":"2500","slideshowStart":"start slideshow","slideshowStop":"stop slideshow","current":"{current} of {total}","previous":"\u00ab Prev","next":"Next \u00bb","close":"Close","overlayClose":true,"returnFocus":true,"maxWidth":"98%","maxHeight":"98%","initialWidth":"300","initialHeight":"250","fixed":true,"scrolling":true,"mobiledetect":true,"mobiledevicewidth":"480px"},"better_exposed_filters":{"datepicker":false,"slider":false,"settings":[],"autosubmit":false,"views":{"drupalorg_casestudies":{"displays":{"fs_landing_page":{"filters":{"version":{"required":false},"sectors":{"required":false}}}}}}},"urlIsAjaxTrusted":{"\/case-studies":true},"drupalorgCrosssiteConsentNeeded":true}); if(jQuery.isFunction(jQuery.holdReady)){jQuery.holdReady(false);}} if(window.jQuery && window.Drupal){init_drupal_core_settings();} //--><!]]> </script> <script type="text/javascript" src="/web/20210322130519js_/https://www.drupal.org/files/advagg_js/js__vj0LjvNwl-3K1P9LGT4BGuXCZcAovYsVlVmoJN3TMRg__KW8SiGceRY3sjIKVrffDjf2MK4A5Vp3EDDxVO-4pegI__YaNGWokqa69Wq8hHbkE322PVJ8I-GmpfBsT8LGsMpcI.js" defer="defer"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam-cell.nr-data.net","licenseKey":"e671e25255","applicationID":"4266189","transactionName":"Z1AEbREHVxAFU0RRV14aJ1oXD1YNS0ZZXU9DahZYBAM=","queueTime":0,"applicationTime":716,"atts":"SxcHG1kdRB4=","errorBeacon":"bam-cell.nr-data.net","agent":""}</script></body> </html> <!-- FILE ARCHIVED ON 13:05:19 Mar 22, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 19:21:35 Feb 17, 2025. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.791 exclusion.robots: 0.059 exclusion.robots.policy: 0.042 esindex: 0.017 cdx.remote: 5.241 LoadShardBlock: 318.531 (3) PetaboxLoader3.datanode: 207.933 (5) PetaboxLoader3.resolve: 692.426 (3) load_resource: 632.506 loaddict: 93.742 -->