'use strict' var serverUrl = 'http://caron.ads.intra.inist.fr:53390'; var IstexWidget = function() {}; IstexWidget.prototype = { injectHTML: function() { var searchWidget = document.getElementById('istex-widget-search'); searchWidget.setAttribute('class', 'container'); searchWidget.setAttribute('ng-controller', 'istexWidgetCtrl'); var resultsWidget = document.getElementById('istex-widget-results'); resultsWidget.setAttribute('ng-controller', 'istexWidgetCtrl'); addHtml("istex-widget-search", serverUrl+"/html/part_search.html"); addHtml("istex-widget-results", serverUrl+"/html/part_results.html"); //addHtml("istex-widget-facets", serverUrl+"/html/part_facets.html"); }, injectCSS: function() { addCSS(serverUrl+"/css/part_search.css"); addCSS(serverUrl+"/css/part_results.css"); addCSS(serverUrl+"/css/part_facets.css"); addCSS("//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"); }, injectJS: function() { addJS([ "http://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular.min.js", "http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js", "http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js", serverUrl+"/js/app.js" ]); } }; var addJS = function(jsLinks) { var body = document.body; var js = document.createElement("script"); js.src = jsLinks.shift(); js.type = "text/javascript"; if (jsLinks.length > 0) { js.onload = function() { addJS(jsLinks); }; }; body.appendChild(js); }; var addCSS = function(cssLink) { var header = document.head; var customCss = document.createElement("link"); customCss.href = cssLink; customCss.rel = "stylesheet"; customCss.type = "text/css"; header.appendChild(customCss); }; var addHtml = function(id, htmlLink) { var searchWidget = document.getElementById(id); var request = new XMLHttpRequest(); request.open("GET", htmlLink); request.onload = function() { searchWidget.innerHTML = request.responseText; }; request.send(); }; var istexWidget = new IstexWidget(); istexWidget.injectHTML(); istexWidget.injectCSS(); istexWidget.injectJS();