export class SoSFlipDialog extends Dialog { /* -------------------------------------------- */ constructor(flipData, html) { let conf = { title: 'Flip Dialog', content: html, buttons: { 'flip-close': { label: 'Cancel and Close', callback: html => this.onFlipClose() } }, default: 'flip' }; super(conf, { classes: ["sosdialog"], width: 800, height: 800 }); this.flipData = flipData; } /* -------------------------------------------- */ onFlipClose( ) { this.close(); } /* -------------------------------------------- */ async updateFlip( flipData ) { console.log("UPDATE !!!", flipData); $('.view-deck').remove(); $("#view-deck").append(await flipData.actor.cardDeck.getDeckHTML()); $('.view-edge').remove(); $("#view-edge").append(await flipData.actor.cardDeck.getEdgeHTML()); $('.edge-card').click((event) => { let flipData = duplicate(this.flipData); flipData.modifier = $('#modifier').val(); flipData.tn = $('#tn').val(); flipData.edgeName = event.currentTarget.attributes['data-edge-card'].value; flipData.cardOrigin = "Edge"; if ( flipData.mode == 'skill') { flipData.stat = duplicate( flipData.statList[ $('#statSelect').val() ] ); } this.flipData.actor.cardDeck.doFlipFromDeckOrEdge(flipData); this.onFlipClose(); }); } /* -------------------------------------------- */ activateListeners(html) { super.activateListeners(html); this.bringToTop(); var dialog = this; function onLoad() { let flipData = dialog.flipData; //RdDItemSort.setCoutReveReel(rollData.selectedSort); //$("#diffLibre").val(Misc.toInt(rollData.diffLibre)); //$("#diffConditions").val(Misc.toInt(rollData.diffConditions)); dialog.updateFlip(flipData); } // Setup everything onload $(function () { onLoad(); }); html.find('.class-view-deck').click((event) => { let flipData = duplicate(this.flipData); flipData.modifier = html.find('#modifier').val(); flipData.tn = html.find('#tn').val(); if ( flipData.mode == 'skill') { let statKey = $('#statSelect').val(); flipData.stat = duplicate( flipData.statList[ statKey ] ); } flipData.cardOrigin = "Deck"; flipData.tn = html.find('#tn').val(); dialog.flipData.actor.cardDeck.doFlipFromDeckOrEdge(flipData); dialog.onFlipClose(); }); } }