added a comment - - edited
Dear Ralf
Thanks for letting me know about this.
I did not really write it. I paid moodle.com to implement it based on my hack (theme.zip here
http://moodle.org/mod/forum/discuss.php?d=12821
which merely compiled code by Rob Butner and Indjana Dzons
http://moodle.org/mod/forum/discuss.php?d=2425&parent=17556
Despite my entreties, however, the Moodle javascript was (I believe) never as agressive as the original in the original empties the clipboard buffer every second and this is the most effective any copying measure I know. It even prevents screen shots using the print screen key, AFAIK.
More modern versions of Internet explorer warn the user that this is happening but accepting it is a condition of entry.
However, as far as I know even the most effective Rob Butner version did not work on Opera browsers.
I am not sure why it should have stopped working (other than in Opera) but as someone says above, more recent versions of IE are more likely to complain. And as you say, there are some browser add ins, for instance for maxthon browser that will disable specifically copy protection (while leaveing javascript intact). I am not sure if these plugins affect the clipboard clearing mechanism in the Rob Butner version.
The secure window works in tandem with the #is java script on# checker created by I think Vy which opened another windown on login if a secure window is being used somewhere. This warned users to allow popups and switch on javascript. I think that the warning system is not working in some popup blocked enviroments.
You are right that ctr plus tab allows students to change window. I am not sure how that will allow them to cheat but it is not a good idea. I would like it if all control characters were disabled.
The javascript in Rob Butner's any copying measure can be decripted using the decryption thml page attached to my post here
http://moodle.org/mod/forum/discuss.php?d=13828&parent=67237
Here we go, I have decrypted it (this is the ROB BUTNER, not the moodle version)
<SCRIPT LANGUAGE="JavaScript"><!--
hp_ok=true;function hp_d00(s){if(!hp_ok)return;document.write(s)}//--></SCRIPT>
<SCRIPT LANGUAGE="JavaScript"><!--
function hp_ne(){return true}onerror=hp_ne;function hp_dn(a){return false};function hp_de(e){return(e.target.tagName!=null&&e.target.tagName.search('^(INPUT|TEXTAREA|BUTTON|SELECT)$')!=-1)};function hp_md(e){if(e.which==1){window.captureEvents(Event.MOUSEMOVE);window.onmousemove=hp_dn}}function hp_mu(e){if(e.which==1){window.releaseEvents(Event.MOUSEMOVE);window.onmousemove=null}}if(navigator.appName.indexOf('Internet Explorer')==-1||(navigator.userAgent.indexOf('MSIE')Unable to render embedded object: File (=-1&&document.all.length) not found.=0)){if(document.all){document.onselectstart=hp_dn}else if(document.layers){window.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN);window.onmousedown=hp_md;window.onmouseup=hp_mu}else if(document.getElementById&&!document.all){document.onmousedown=hp_de}}if(window.location.href.substring(0,4)=="file")window.location="about:blank";function hp_nls(){window.status="";setTimeout("hp_nls()",10)}hp_nls();function hp_dp1(){for(i=0;i<document.all.length;i++){if(document.all[i].style.visibility!="hidden"){document.all[i].style.visibility="hidden";document.all[i].id="hp_id"}}};function hp_dp2(){for(i=0;i<document.all.length;i++){if(document.all[i].id=="hp_id")document.all[i].style.visibility=""}};window.onbeforeprint=hp_dp1;window.onafterprint=hp_dp2;document.write('<style type="text/css" media="print"><!--body{display:none}--></style>');function hp_dc(){hp_ta.createTextRange().execCommand("Copy");setTimeout("hp_dc()",300)}if(navigator.appName.indexOf('Internet Explorer')==-1||(navigator.userAgent.indexOf('MSIE')Unable to render embedded object: File (=-1&&document.all.length) not found.=0)){if(document.all&&navigator.userAgent.indexOf('Opera')==-1){document.write('<div style="position:absolute;left:-1000px;top:-1000px"><input type="textarea" name="hp_ta" value=" " style="visibility:hidden"></div>');hp_dc()}}function hp_ndd(){return false}document.ondragstart=hp_ndd;//--></SCRIPT>
I am afraid I don't have the money to use more recent versions of moodle. I am afraid I will not be able to pay for an upgrade even if I had some more funds because the function is working well enough for me in 1.6.3 other than in Opera. I estimate that only 1 percent of my users use Opera.
I am really surprised that any employer using quizes would not want to provide this option. As I have said many times on the forums it seems to me that some religious proscription is at work: "Thou shalt not interfere with the power of the computer" My guess is that the end users (teachers) are not being given the chance to express their desire to prevent student cheating as far as possible, **even if only to a limited extent. I suggest that if teachers were polled there would be sure to be some teachers that would want this feature due to the time it takes to make quizes and desirability that there be **as few* "brain dumps" (all the right answers) *as possible*.
Tim
The secure window thing was not implemented by me, I don't understand how it works, and my employer has no interest in it. Therefore, I can't really afford to take time to fix it myself. However, I know it is important to a lot of people, so hopefully someone can come up with a patch.
If someone does come up with a solution, I will, of course, get it checked in quickly.