@@ -15,6 +15,9 @@ var trackSticky = require('client/trackSticky');
1515 * - after registration for "confirm email" link
1616 */
1717function TutorialMapModal ( ) {
18+ this . elem = document . createElement ( 'div' ) ;
19+ document . body . appendChild ( this . elem ) ;
20+
1821 var modal = new Modal ( { hasClose : false } ) ;
1922 var spinner = new Spinner ( ) ;
2023 modal . setContent ( spinner . elem ) ;
@@ -28,11 +31,13 @@ function TutorialMapModal() {
2831
2932 request . addEventListener ( 'success' , ( event ) => {
3033 modal . remove ( ) ;
31- document . body . insertAdjacentHTML ( 'beforeEnd' , '<div class="tutorial-map-overlay"></div>' ) ;
32- this . elem = document . body . lastChild ;
33- this . elem . innerHTML = event . result + '<button class="close-button tutorial-map-overlay__close"></button>' ;
3434
35- this . elem . addEventListener ( 'click' , ( e ) => {
35+ this . elem . innerHTML = '<div class="tutorial-map-overlay"></div>' ;
36+ this . mapElem = this . elem . firstChild ;
37+
38+ this . mapElem . innerHTML = event . result + '<button class="close-button tutorial-map-overlay__close"></button>' ;
39+
40+ this . mapElem . addEventListener ( 'click' , ( e ) => {
3641 if ( e . target . classList . contains ( 'tutorial-map-overlay__close' ) ) {
3742 this . remove ( ) ;
3843 }
@@ -42,9 +47,9 @@ function TutorialMapModal() {
4247
4348 document . body . classList . add ( 'tutorial-map_on' ) ;
4449
45- this . elem . addEventListener ( 'scroll' , trackSticky ) ;
50+ this . mapElem . addEventListener ( 'scroll' , trackSticky ) ;
4651
47- new TutorialMap ( this . elem . firstElementChild ) ;
52+ new TutorialMap ( this . mapElem . firstElementChild ) ;
4853 } ) ;
4954
5055 request . addEventListener ( 'fail' , ( ) => modal . remove ( ) ) ;
@@ -54,6 +59,7 @@ function TutorialMapModal() {
5459delegate . delegateMixin ( TutorialMapModal . prototype ) ;
5560
5661TutorialMapModal . prototype . remove = function ( ) {
62+ this . elem . dispatchEvent ( new CustomEvent ( 'tutorial-map-remove' ) ) ;
5763 this . elem . remove ( ) ;
5864 document . body . classList . remove ( 'tutorial-map_on' ) ;
5965 document . removeEventListener ( "keydown" , this . onDocumentKeyDown ) ;
0 commit comments