[ 
https://issues.apache.org/jira/browse/VCL-444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Thompson reassigned VCL-444:
---------------------------------

    Assignee: Josh Thompson
    
> time delay the display of the Get RDP File button to allow vcld to grant 
> access
> -------------------------------------------------------------------------------
>
>                 Key: VCL-444
>                 URL: https://issues.apache.org/jira/browse/VCL-444
>             Project: VCL
>          Issue Type: Improvement
>          Components: web gui (frontend)
>            Reporter: Josh Thompson
>            Assignee: Josh Thompson
>             Fix For: 2.3
>
>
> If a user clicks the Connect button and then the Get RDP File button too 
> quickly, vcld will not have a chance to actually grant the user access 
> through the host firewall.  Having javascript delay the display of the Get 
> RDP File button would help users not be confused about why they were not able 
> to connect to the machine.
> Gerhard Hartl from ODU contributed the following code to make this happen:
> Roughly around line 2217 (v2.2.1) on requests.php replace the Get RDP File 
> form section with:
> print "<style type=\"text/css\">\n";
> print " .off {\n";
> print " visibility: hidden;\n";
> print " } .on {\n";
> print " visibility: visible;\n";
> print " }\n";
> print "</style>\n";
> print "<script type=\"text/javascript\">\n";
> print " window.onload = function() {\n";
> print " var timeInterval = 5;\n";
> print " if (typeof timeInterval === 'undefined' || parseInt(timeInterval) <= 
> 0) {\n";
> print "         timeInterval = 1\n";
> print " }\n";
> print "document.getElementById('counter').innerHTML = \" Ready to connect in 
> \" + timeInterval + \" seconds\";\n";
> print "var si = setInterval(function() {\n";
> print "if (timeInterval === 0) {\n";
> print "         clearInterval(si);\n";
> print " } else {\n";
> print "--timeInterval;\n";
> print "if (timeInterval !== 0) {\n";
> print "         document.getElementById('counter').innerHTML = \" Ready to 
> connect in \" + timeInterval + \" seconds\";\n";
> print "} else {\n";
> print "         document.getElementById('counter').className = 'off'; 
> //Hiding the counter area.\n";
> print "         document.getElementById('submit').className = 'on'; //Unhide 
> the Submit button\n";
> print "}\n";
> print "}\n";
> print "}, 1000);\n";
> print "setTimeout(function() {\n";
> print "}, timeInterval * 1000);\n";
> print "}\n";
> print "</script>\n";
> print "For automatic connection, you can download an RDP file that can ";
> print "be opened by the Remote Desktop Connection program.<br><br>\n";
> print "<b id=counter></b>";
> print "<table summary=\"\">\n";
> print "  <TR>\n";
> print "    <TD>\n";
> print "      <FORM action=\"" . BASEURL . SCRIPT . "\" method=post  
> id=\"connect\">\n";
> $cdata = array('requestid' => $requestid,
>                       'resid' => 
> $requestData['reservations'][0]['reservationid']);
> $expire = datetimeToUnix($requestData['end']) -
>                datetimeToUnix($requestData['start']) + 1800; # reservation 
> time plus 30 min
> $cont = addContinuationsEntry('sendRDPfile', $cdata, $expire);
> print "      <INPUT type=hidden name=continuation value=\"$cont\">\n";
> print "      <INPUT type=submit value=\"Get RDP File\" class=\"off\" 
> id=\"submit\">\n";
> print "      </FORM>\n";
> print "    </TD>\n";
> print "  </TR>\n";
> print "</table>\n";

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to