diff --git a/amd/build/jmodule.min.js b/amd/build/jmodule.min.js
index a272613967bab12cd73e6bd06e371c9e33273080..b043797a81aa66a03baa752cafe92dbe4f800625 100644
--- a/amd/build/jmodule.min.js
+++ b/amd/build/jmodule.min.js
@@ -1,2 +1,3 @@
-/*! hshcourselist 2019-04-10 */
-define(["jquery"],function(a){function b(b,c,d,e,f,g,h,i,j){c&&(a("#hshcourseprogress").show(),a.ajax({type:"GET",url:j+"/blocks/hshcourselist/hshcourselist.php",data:"course="+b+"&instanceid="+e+"&sesskey="+f+"&contextid="+g+"&idsearching="+h+"&orderbysemester="+i,dataType:"json",success:function(b){var c=JSON.stringify(b),e=JSON.parse(c),f=a("<ul class='list-group' id='hshcourselistul'></ul>");e.length>0&&a.each(e,function(b,c){switch(d){case"0":displaystr=c.shortname;break;case"1":displaystr=c.fullname;break;case"2":displaystr=c.shortname+": "+c.fullname;break;default:displaystr=c.fullname}a('<li class="list-group-item hshcoursesearchlistitem " value="'+c.id+'"><a href="'+j+"/course/view.php?id="+c.id+'">'+displaystr+"</a> </li>").appendTo(f)}),a("#hshcourselistul").replaceWith(f),a("#hshcourseprogress").hide()},error:function(a){console.error("error "+JSON.stringify(a))}}))}return{init:function(c,d){var e,c=c,f=c.instanceid,g=c.sesskey,h=c.displaymode,i=c.contextid,j=!1,k=!1,l=c.orderbysemester;a("#hshcourseprogress").hide(),a(".idSarchingLabel").hide(),a("#orderbysemestercheckbox_id").on("change",function(){l=document.getElementById("orderbysemestercheckbox_id").checked,j=!0,e=document.getElementById("hshcourselistsearch").value,e=e.replace(/%/g,""),e=e.trim(),"#"===e.slice(0,1)?(a(".idSarchingLabel").show(),k=!0,e=e.slice(1)):(a(".idSarchingLabel").hide(),k=!1),(1==k||e.length>=3)&&b(e,j,h,f,g,i,k,l,d)}),a("#hshcourselistsearch").on("keyup",function(c){var m=c.keyCode;l=document.getElementById("orderbysemestercheckbox_id").checked,40!==m&&38!==m&&13!==m&&(j=!0,e=document.getElementById("hshcourselistsearch").value,e=e.replace(/%/g,""),e=e.trim(),"#"===e.slice(0,1)?(a(".idSarchingLabel").show(),k=!0,e=e.slice(1)):(a(".idSarchingLabel").hide(),k=!1),(1==k||e.length>=3)&&b(e,j,h,f,g,i,k,l,d))}),a("#hshcourseform").on("submit",function(a){a.preventDefault,j=!0,k=!1,l=document.getElementById("orderbysemestercheckbox_id").checked,e=document.getElementById("hshcourselistsearch").value,e=e.replace(/%/g,""),e=e.trim(),"#"===e.slice(0,1)?(k=!0,e=e.slice(1)):k=!1,(1==k||e.length>=3)&&b(e,j,h,f,g,i,k,l,d)})}}});
\ No newline at end of file
+define("block_hshcourselist/jmodule",["jquery"],(function($){function search(searchstring,reloadBool,displaymode,instanceid,sesskey,contextid,idsearching,orderbysemester,wwwroot){reloadBool&&($("#hshcourseprogress").show(),$.ajax({type:"GET",url:wwwroot+"/blocks/hshcourselist/hshcourselist.php",data:"course="+searchstring+"&instanceid="+instanceid+"&sesskey="+sesskey+"&contextid="+contextid+"&idsearching="+idsearching+"&orderbysemester="+orderbysemester,dataType:"json",success:function(response){var plainJSON=JSON.stringify(response),courses=JSON.parse(plainJSON),list=$("<ul class='list-group' id='hshcourselistul'></ul>");courses.length>0?$.each(courses,(function(index,course){switch(displaymode){case"0":displaystr=course.shortname;break;case"1":default:displaystr=course.fullname;break;case"2":displaystr=course.shortname+": "+course.fullname}$('<li class="list-group-item hshcoursesearchlistitem " value="'+course.id+'"><a href="'+wwwroot+"/course/view.php?id="+course.id+'">'+displaystr+"</a> </li>").appendTo(list)})):$('<li class="list-group-item hshcoursesearchlistitem " value=""><a href="'+wwwroot+'/my/">Keine Ergebnisse gefunden.</a> </li>').appendTo(list),$("#hshcourselistul").replaceWith(list),$("#hshcourseprogress").hide()},error:function(a){$(location).attr("href",wwwroot+"/my/")}}))}return{init:function(jsdataobject,wwwroot){var searchstring,instanceid=(jsdataobject=jsdataobject).instanceid,sesskey=jsdataobject.sesskey,displaymode=jsdataobject.displaymode,contextid=jsdataobject.contextid,reloadList=!1,idsearching=!1,orderbysemester=jsdataobject.orderbysemester;$("#hshcourseprogress").hide(),$(".idSarchingLabel").hide(),$("#orderbysemestercheckbox_id").on("change",(function(){orderbysemester=document.getElementById("orderbysemestercheckbox_id").checked,reloadList=!0,"#"===(searchstring=(searchstring=(searchstring=document.getElementById("hshcourselistsearch").value).replace(/%/g,"")).trim()).slice(0,1)?($(".idSarchingLabel").show(),idsearching=!0,searchstring=searchstring.slice(1)):($(".idSarchingLabel").hide(),idsearching=!1),(1==idsearching||searchstring.length>=3)&&search(searchstring,reloadList,displaymode,instanceid,sesskey,contextid,idsearching,orderbysemester,wwwroot)})),$("#hshcourselistsearch").on("keyup",(function(e){var key=e.keyCode;orderbysemester=document.getElementById("orderbysemestercheckbox_id").checked,40!==key&&38!==key&&13!==key&&(reloadList=!0,"#"===(searchstring=(searchstring=(searchstring=document.getElementById("hshcourselistsearch").value).replace(/%/g,"")).trim()).slice(0,1)?($(".idSarchingLabel").show(),idsearching=!0,searchstring=searchstring.slice(1)):($(".idSarchingLabel").hide(),idsearching=!1),1==idsearching||searchstring.length>=3?search(searchstring,reloadList,displaymode,instanceid,sesskey,contextid,idsearching,orderbysemester,wwwroot):$("#hshcourselistul").children().remove())})),$("#hshcourseform").on("submit",(function(e){e.preventDefault,reloadList=!0,idsearching=!1,orderbysemester=document.getElementById("orderbysemestercheckbox_id").checked,"#"===(searchstring=(searchstring=(searchstring=document.getElementById("hshcourselistsearch").value).replace(/%/g,"")).trim()).slice(0,1)?(idsearching=!0,searchstring=searchstring.slice(1)):idsearching=!1,(1==idsearching||searchstring.length>=3)&&search(searchstring,reloadList,displaymode,instanceid,sesskey,contextid,idsearching,orderbysemester,wwwroot)}))}}}));
+
+//# sourceMappingURL=jmodule.min.js.map
\ No newline at end of file
diff --git a/amd/build/jmodule.min.js.map b/amd/build/jmodule.min.js.map
new file mode 100644
index 0000000000000000000000000000000000000000..e4d57103ebf4b61e19c41463cd6fd61b3c031e42
--- /dev/null
+++ b/amd/build/jmodule.min.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"jmodule.min.js","sources":["../src/jmodule.js"],"sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.\n\n\ndefine(['jquery'], function ($) {\n    function search(searchstring, reloadBool, displaymode, instanceid, sesskey, contextid, idsearching, orderbysemester, wwwroot) {\n        if (reloadBool) {\n            $(\"#hshcourseprogress\").show();\n            $.ajax({\n                type: 'GET',\n                url: wwwroot + '/blocks/hshcourselist/hshcourselist.php',\n                data: 'course=' + searchstring + '&instanceid=' + instanceid\n                    + '&sesskey=' + sesskey + '&contextid=' + contextid\n                    + '&idsearching=' + idsearching + '&orderbysemester=' + orderbysemester,\n                dataType: \"json\",\n                success: function (response) {\n                    var plainJSON = JSON.stringify(response);\n                    var courses = JSON.parse(plainJSON);\n                    var list = $(\"<ul class='list-group' id='hshcourselistul'></ul>\");\n                    if (courses.length > 0) {\n                        $.each(courses, function (index, course) {\n                            switch (displaymode) {\n                                case '0':\n                                    displaystr = course.shortname;\n                                    break;\n\n                                case '1':\n                                    displaystr = course.fullname;\n                                    break;\n\n                                case '2':\n                                    displaystr = course.shortname + ': ' + course.fullname;\n                                    break;\n\n                                default:\n                                    displaystr = course.fullname;\n                                    break;\n                            }\n                            $('<li class=\"list-group-item hshcoursesearchlistitem \" value=\"' + course.id + '\">'\n                                + '<a href=\"' + wwwroot + '/course/view.php?id=' + course.id + '\">' + displaystr + '</a> </li>')\n                                .appendTo(list);\n                        });\n                    } else {\n                        $('<li class=\"list-group-item hshcoursesearchlistitem \" value=\"\">'\n                            + '<a href=\"' + wwwroot + '/my/\">Keine Ergebnisse gefunden.</a> </li>')\n                            .appendTo(list);\n                    }\n                    $(\"#hshcourselistul\").replaceWith(list);\n                    $(\"#hshcourseprogress\").hide();\n                },\n                error: function (a) {\n                    $(location).attr('href', wwwroot + '/my/');\n                }\n            });\n        } else {\n        }\n    }\n\n    return {\n        init: function (jsdataobject, wwwroot) {\n            var jsdataobject = jsdataobject;\n            var instanceid = jsdataobject.instanceid;\n            var sesskey = jsdataobject.sesskey;\n            var displaymode = jsdataobject.displaymode;\n            var contextid = jsdataobject.contextid;\n            var reloadList = false;\n            var idsearching = false;\n            var searchstring;\n            var orderbysemester = jsdataobject.orderbysemester;\n            var displaystr;\n\n            $(\"#hshcourseprogress\").hide();\n            $(\".idSarchingLabel\").hide();\n\n            $('#orderbysemestercheckbox_id').on('change', function () {\n                orderbysemester = document.getElementById('orderbysemestercheckbox_id').checked;\n                reloadList = true;\n                searchstring = document.getElementById('hshcourselistsearch').value;\n                searchstring = searchstring.replace(/%/g, '');\n                searchstring = searchstring.trim();\n                if (searchstring.slice(0, 1) === '#') {\n                    $(\".idSarchingLabel\").show();\n                    idsearching = true;\n                    searchstring = searchstring.slice(1);\n                } else {\n                    $(\".idSarchingLabel\").hide();\n                    idsearching = false;\n                }\n                if (idsearching == true || searchstring.length >= 3) {\n                    search(searchstring, reloadList, displaymode, instanceid, sesskey, contextid, idsearching, orderbysemester, wwwroot);\n                } else {\n                    // Search start after 3 chars or searching by id.\n                }\n            });\n\n            $('#hshcourselistsearch').on('keyup', function (e) {\n                var key = e.keyCode;\n                orderbysemester = document.getElementById('orderbysemestercheckbox_id').checked;\n                if (key !== 40 && key !== 38 && key !== 13) {\n                    reloadList = true;\n                    searchstring = document.getElementById('hshcourselistsearch').value;\n                    searchstring = searchstring.replace(/%/g, '');\n                    searchstring = searchstring.trim();\n                    if (searchstring.slice(0, 1) === '#') {\n                        $(\".idSarchingLabel\").show();\n                        idsearching = true;\n                        searchstring = searchstring.slice(1);\n                    } else {\n                        $(\".idSarchingLabel\").hide();\n                        idsearching = false;\n                    }\n                    if (idsearching == true || searchstring.length >= 3) {\n                        search(searchstring, reloadList, displaymode, instanceid, sesskey, contextid, idsearching, orderbysemester, wwwroot);\n                    } else {\n                        // Search start after 3 chars or searching by id.\n                        $('#hshcourselistul').children().remove();\n                    }\n                }\n            });\n            $('#hshcourseform').on('submit', function (e) {\n                e.preventDefault;\n                reloadList = true;\n                idsearching = false;\n                orderbysemester = document.getElementById('orderbysemestercheckbox_id').checked;\n                searchstring = document.getElementById('hshcourselistsearch').value;\n                searchstring = searchstring.replace(/%/g, '');\n                searchstring = searchstring.trim();\n                if (searchstring.slice(0, 1) === '#') {\n                    idsearching = true;\n                    searchstring = searchstring.slice(1);\n                } else {\n                    idsearching = false;\n                }\n                if (idsearching == true || searchstring.length >= 3) {\n                    search(searchstring, reloadList, displaymode, instanceid, sesskey, contextid, idsearching, orderbysemester, wwwroot);\n                } else {\n                    // Search start after 3 chars or searching by id.\n                }\n            });\n        },\n    }\n});\n"],"names":["define","$","search","searchstring","reloadBool","displaymode","instanceid","sesskey","contextid","idsearching","orderbysemester","wwwroot","show","ajax","type","url","data","dataType","success","response","plainJSON","JSON","stringify","courses","parse","list","length","each","index","course","displaystr","shortname","fullname","id","appendTo","replaceWith","hide","error","a","location","attr","init","jsdataobject","reloadList","on","document","getElementById","checked","value","replace","trim","slice","e","key","keyCode","children","remove","preventDefault"],"mappings":"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"}
\ No newline at end of file
diff --git a/amd/build/listselect.min.js b/amd/build/listselect.min.js
index 51b37e0729604516ccf166f9a8d3e489e2420167..bf7d6f55235e0cc6fef569cb1c0674773b04a18d 100644
--- a/amd/build/listselect.min.js
+++ b/amd/build/listselect.min.js
@@ -1,2 +1,9 @@
-/*! hshcourselist 2019-04-10 */
-define(["jquery"],function(a){function b(b,c){var d=c+"/course/view.php?id="+b.val();a("#hshcourseform").attr("action",d)}function c(a){a.removeClass("active"),a.removeClass("activeCourseSearch")}function d(a){a.addClass("active"),a.addClass("activeCourseSearch")}function e(a){var b=window.innerHeight,c=a.getBoundingClientRect(),d=c.bottom,e=c.top;d>b&&a.scrollIntoView({block:"end",behavior:"smooth"}),e<0&&a.scrollIntoView({block:"start",behavior:"smooth"})}return{init:function(f){a("input").keydown(function(g){var h,i=a(".hshcoursesearchlistitem"),j=i.filter(".activeCourseSearch"),k=g.keyCode;if(40===k||38===k||13===k){c(i),38===k?(h=!j.length||j.is(":first-child")?i.last():j.prev(),b(h,f)):40===k?(h=!j.length||j.is(":last-child")?i.eq(0):j.next(),b(h,f)):13===k&&(h=j,isNaN(h.val())&&(h=i.eq(0)),b(h,f)),d(h);e(document.getElementsByClassName("activeCourseSearch")[0])}})}}});
\ No newline at end of file
+/**
+ *
+ * @package    theme_hsh_boost_campus
+ * @copyright  2018 Tobias Baden, Hochschule Hannover
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+define("block_hshcourselist/listselect",["jquery"],(function($){function changeActionString(current,wwwroot){var actionString=wwwroot+"/course/view.php?id="+current.val();$("#hshcourseform").attr("action",actionString)}return{init:function(wwwroot){$("input").keydown((function(e){var current,listItems=$(".hshcoursesearchlistitem"),selected=listItems.filter(".activeCourseSearch"),key=e.keyCode;if(40===key||38===key||13===key){var target;(target=listItems).removeClass("active"),target.removeClass("activeCourseSearch"),38===key?changeActionString(current=!selected.length||selected.is(":first-child")?listItems.last():selected.prev(),wwwroot):40===key?changeActionString(current=!selected.length||selected.is(":last-child")?listItems.eq(0):selected.next(),wwwroot):13===key&&(current=selected,isNaN(current.val())&&(current=listItems.eq(0)),changeActionString(current,wwwroot)),function(target){target.addClass("active"),target.addClass("activeCourseSearch")}(current);var element,windowSize,elementPosition,elementBottom,elementTop,scrollToElement=document.getElementsByClassName("activeCourseSearch")[0];element=scrollToElement,windowSize=window.innerHeight,elementPosition=element.getBoundingClientRect(),elementBottom=elementPosition.bottom,elementTop=elementPosition.top,elementBottom>windowSize&&element.scrollIntoView({block:"end",behavior:"smooth"}),elementTop<0&&element.scrollIntoView({block:"start",behavior:"smooth"})}}))}}}));
+
+//# sourceMappingURL=listselect.min.js.map
\ No newline at end of file
diff --git a/amd/build/listselect.min.js.map b/amd/build/listselect.min.js.map
new file mode 100644
index 0000000000000000000000000000000000000000..90b88a697ff72a6925f43ec682143137b91f5f23
--- /dev/null
+++ b/amd/build/listselect.min.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"listselect.min.js","sources":["../src/listselect.js"],"sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.\n\n/**\n *\n * @package    theme_hsh_boost_campus\n * @copyright  2018 Tobias Baden, Hochschule Hannover\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\n\ndefine([\"jquery\"], function($) {\n    function changeActionString(current, wwwroot) {\n        var actionString = wwwroot + \"/course/view.php?id=\" + current.val();\n        $(\"#hshcourseform\").attr(\"action\", actionString);\n    }\n\n    function setInactive(target) {\n        target.removeClass(\"active\");\n        target.removeClass(\"activeCourseSearch\");\n    }\n\n    function setActive(target) {\n        target.addClass(\"active\");\n        target.addClass(\"activeCourseSearch\");\n    }\n\n    function scrollIntoViewIfNeeded(element) {\n        var windowSize = window.innerHeight;\n        var elementPosition = element.getBoundingClientRect();\n        var elementBottom = elementPosition.bottom;\n        var elementTop = elementPosition.top;\n\n        if (elementBottom > windowSize) {\n            // Scroll an den unteren Rand des Bildes.\n            element.scrollIntoView({ block: \"end\", behavior: \"smooth\" });\n        }\n        if (elementTop < 0) {\n            // Scroll an den oberen Rand des Bildes.\n            element.scrollIntoView({ block: \"start\", behavior: \"smooth\" });\n        }\n    }\n\n    return {\n        init: function(wwwroot) {\n            $(\"input\").keydown(function(e) {\n                var listItems = $(\".hshcoursesearchlistitem\");\n                var selected = listItems.filter(\".activeCourseSearch\");\n                var current;\n                var key = e.keyCode;\n\n                if (key !== 40 && key !== 38 && key !== 13) {\n                    return;\n                }\n\n                setInactive(listItems);\n\n                if (key === 38) {\n                    // KEY UP!\n                    if (!selected.length || selected.is(\":first-child\")) {\n                        current = listItems.last();\n                    } else {\n                        current = selected.prev();\n                    }\n                    changeActionString(current, wwwroot);\n                } else if (key === 40) {\n                    // KEY DOWN!\n                    if (!selected.length || selected.is(\":last-child\")) {\n                        current = listItems.eq(0);\n                    } else {\n                        current = selected.next();\n                    }\n                    changeActionString(current, wwwroot);\n                } else if (key === 13) {\n                    // KEY ENTER!\n                    current = selected;\n                    if (isNaN(current.val())) {\n                        current = listItems.eq(0);\n                    }\n                    changeActionString(current, wwwroot);\n                }\n\n                setActive(current);\n                var scrollToElement = document.getElementsByClassName(\n                    \"activeCourseSearch\"\n                )[0];\n                scrollIntoViewIfNeeded(scrollToElement);\n            });\n        }\n    };\n});\n"],"names":["define","$","changeActionString","current","wwwroot","actionString","val","attr","init","keydown","e","listItems","selected","filter","key","keyCode","target","removeClass","length","is","last","prev","eq","next","isNaN","addClass","setActive","element","windowSize","elementPosition","elementBottom","elementTop","scrollToElement","document","getElementsByClassName","window","innerHeight","getBoundingClientRect","bottom","top","scrollIntoView","block","behavior"],"mappings":";;;;;;AAuBAA,wCAAO,CAAC,WAAW,SAASC,YACfC,mBAAmBC,QAASC,aAC7BC,aAAeD,QAAU,uBAAyBD,QAAQG,MAC9DL,EAAE,kBAAkBM,KAAK,SAAUF,oBA6BhC,CACHG,KAAM,SAASJ,SACXH,EAAE,SAASQ,SAAQ,SAASC,OAGpBP,QAFAQ,UAAYV,EAAE,4BACdW,SAAWD,UAAUE,OAAO,uBAE5BC,IAAMJ,EAAEK,WAEA,KAARD,KAAsB,KAARA,KAAsB,KAARA,SAlCvBE,QAAAA,OAsCGL,WArCbM,YAAY,UACnBD,OAAOC,YAAY,sBAsCC,KAARH,IAOAZ,mBAJIC,SADCS,SAASM,QAAUN,SAASO,GAAG,gBACtBR,UAAUS,OAEVR,SAASS,OAEKjB,SACb,KAARU,IAOPZ,mBAJIC,SADCS,SAASM,QAAUN,SAASO,GAAG,eACtBR,UAAUW,GAAG,GAEbV,SAASW,OAEKnB,SACb,KAARU,MAEPX,QAAUS,SACNY,MAAMrB,QAAQG,SACdH,QAAUQ,UAAUW,GAAG,IAE3BpB,mBAAmBC,QAASC,mBAzDzBY,QACfA,OAAOS,SAAS,UAChBT,OAAOS,SAAS,sBA0DRC,CAAUvB,aAvDUwB,QACxBC,WACAC,gBACAC,cACAC,WAoDQC,gBAAkBC,SAASC,uBAC3B,sBACF,GA1DkBP,QA2DGK,gBA1D3BJ,WAAaO,OAAOC,YACpBP,gBAAkBF,QAAQU,wBAC1BP,cAAgBD,gBAAgBS,OAChCP,WAAaF,gBAAgBU,IAE7BT,cAAgBF,YAEhBD,QAAQa,eAAe,CAAEC,MAAO,MAAOC,SAAU,WAEjDX,WAAa,GAEbJ,QAAQa,eAAe,CAAEC,MAAO,QAASC,SAAU"}
\ No newline at end of file