rlm@1
|
1 <html>
|
rlm@1
|
2 <head>
|
rlm@1
|
3 <title>error-daemon@aurellem:</title>
|
rlm@1
|
4 <style type="text/css">
|
rlm@1
|
5 html,body{margin:0;padding:0;}
|
rlm@1
|
6 body{font:100% monospace;line-height:1.2em;}
|
rlm@1
|
7
|
rlm@1
|
8 body{background:black;color:white;}
|
rlm@1
|
9 em{color:#444;font-style:normal; background:white;}
|
rlm@1
|
10 em{background:inherit;color:inherit;color:#fcc;}
|
rlm@1
|
11 </style>
|
rlm@1
|
12 <script type="text/javascript" src="/aurellem/src/js/jquery.min.js"></script>
|
rlm@1
|
13
|
rlm@1
|
14 <script type="text/javascript">
|
rlm@1
|
15 var caret;
|
rlm@1
|
16
|
rlm@1
|
17 // caret functions
|
rlm@1
|
18
|
rlm@1
|
19 function Caret(){
|
rlm@1
|
20 this.obj = null;
|
rlm@1
|
21 this.txt = "";
|
rlm@1
|
22 this.glyph = "_";
|
rlm@1
|
23 this.glyph = "█";
|
rlm@1
|
24 this.gylph_mode = false;
|
rlm@1
|
25 this.queue = new Array();//queue of things to type next
|
rlm@1
|
26
|
rlm@1
|
27 this.attach = function(elt){this.obj = elt;}
|
rlm@1
|
28 this.refresh = function(){
|
rlm@1
|
29 $(this.obj).html(this.txt + (this.glyph_mode ? this.glyph : ""));
|
rlm@1
|
30 }
|
rlm@1
|
31 this.stall = function(n){
|
rlm@1
|
32 for(i=0;i<n;i++){this.instantly('##')};// ## is used to mean Stall for one increment
|
rlm@1
|
33 }
|
rlm@1
|
34 this.blink = function(){
|
rlm@1
|
35 this.glyph_mode = !this.glyph_mode;
|
rlm@1
|
36 this.refresh();
|
rlm@1
|
37 }
|
rlm@1
|
38 this.keystroke = function(str){this.queue = this.queue.concat(str.split(""));}
|
rlm@1
|
39 this.instantly = function(str){this.queue.push(str)}
|
rlm@1
|
40 this.newline = function(str){this.instantly('<br>');}
|
rlm@1
|
41 this.prompt = function(){this.instantly('<em>error-daemon@aurellem:$</em> ');}
|
rlm@1
|
42
|
rlm@1
|
43 this.type = function(){
|
rlm@1
|
44 if(this.queue.length > 0){
|
rlm@1
|
45 var x = this.queue.shift();
|
rlm@1
|
46 if(x != "##"){this.txt += x;}
|
rlm@1
|
47 this.refresh();
|
rlm@1
|
48 }
|
rlm@1
|
49 }
|
rlm@1
|
50 }
|
rlm@1
|
51
|
rlm@1
|
52
|
rlm@1
|
53
|
rlm@1
|
54 function error_404(){
|
rlm@1
|
55
|
rlm@1
|
56 caret.instantly("**** ERROR 404: PAGE NOT FOUND");
|
rlm@1
|
57
|
rlm@1
|
58 caret.newline();
|
rlm@1
|
59 caret.prompt();
|
rlm@1
|
60 caret.stall(80);
|
rlm@1
|
61 caret.keystroke("I regret to inform you that the page you have requested does not exist on our servers at this time.");
|
rlm@1
|
62
|
rlm@1
|
63 caret.newline();
|
rlm@1
|
64 caret.prompt();
|
rlm@1
|
65 caret.stall(40);
|
rlm@1
|
66 caret.keystroke("Preliminary analysis, building on previously acquired data, indicates that some form of human error is to blame. ");
|
rlm@1
|
67 caret.stall(20);
|
rlm@1
|
68 caret.keystroke("Furthermore, all available data indicate that computer involvement of any kind is extremely unlikely.");
|
rlm@1
|
69 caret.stall(20);
|
rlm@1
|
70
|
rlm@1
|
71 caret.keystroke(" Possible human errors include:");
|
rlm@1
|
72 caret.newline();
|
rlm@1
|
73 caret.prompt();
|
rlm@1
|
74 caret.stall(40);
|
rlm@1
|
75 caret.instantly(" ");
|
rlm@1
|
76 caret.keystroke("1. The authors of aurellem, both of whom are are manifestly human, may have directed you, the user, to a nonexistent page.");
|
rlm@1
|
77
|
rlm@1
|
78 caret.newline();
|
rlm@1
|
79 caret.prompt();
|
rlm@1
|
80 caret.stall(40);
|
rlm@1
|
81 caret.instantly(" ");
|
rlm@1
|
82 caret.keystroke("2. The authors of another webpage, many of whom are manifestly human, may have directed you, the user, to a nonexistent page.");
|
rlm@1
|
83
|
rlm@1
|
84 caret.newline();
|
rlm@1
|
85 caret.prompt();
|
rlm@1
|
86 caret.stall(40);
|
rlm@1
|
87 caret.instantly(" ");
|
rlm@1
|
88 caret.keystroke("3. You, the user, ");
|
rlm@1
|
89 caret.stall(40);
|
rlm@1
|
90 caret.keystroke("manifestly human");
|
rlm@1
|
91 caret.stall(20);
|
rlm@1
|
92 caret.keystroke(", may have directed yourself to a nonexistent page.");
|
rlm@1
|
93
|
rlm@1
|
94
|
rlm@1
|
95 caret.newline();
|
rlm@1
|
96 caret.prompt();
|
rlm@1
|
97 caret.stall(40);
|
rlm@1
|
98 caret.keystroke("Please be advised that you or another human may have subjected you to malice and/or incompetence by directing you to request a page that does not exist on our servers at this time.");
|
rlm@1
|
99 caret.stall(20);caret.newline();caret.keystroke("Please be advised that this incident has been reported and that the responsible parties are being determined. ");
|
rlm@1
|
100 caret.stall(40);
|
rlm@1
|
101 caret.instantly("*****Have a nice day.*****");
|
rlm@1
|
102 caret.stall(60);
|
rlm@1
|
103 caret.instantly("<br><br>Connection to aurellem closed.");
|
rlm@1
|
104 }
|
rlm@1
|
105
|
rlm@1
|
106
|
rlm@1
|
107 $(document).ready(function(){
|
rlm@1
|
108 caret = new Caret();
|
rlm@1
|
109 caret.attach($('body'));
|
rlm@1
|
110 caret.refresh();
|
rlm@1
|
111
|
rlm@1
|
112 error_404();
|
rlm@1
|
113
|
rlm@1
|
114 // blinking cursor
|
rlm@1
|
115 (function(){caret.blink();setTimeout(String("("+arguments.callee+")()"),500);})();
|
rlm@1
|
116 // typing text
|
rlm@1
|
117 (function(){caret.type();setTimeout(String("("+arguments.callee+")()"),40);})();
|
rlm@1
|
118
|
rlm@1
|
119
|
rlm@1
|
120
|
rlm@1
|
121 });
|
rlm@1
|
122
|
rlm@1
|
123 </script>
|
rlm@1
|
124
|
rlm@1
|
125 </head>
|
rlm@1
|
126 <body>
|
rlm@1
|
127 testsetahslkfashdljkasdfhkljasdhflskadfhlksadfhlkasdfhlkajsdfhlkasdfhlaksdfhlkjadfhalkjsdfhkalsdfhlkj
|
rlm@1
|
128 <em>TESERHKSJLDFHKSJLDF</em>
|
rlm@1
|
129 </body>
|
rlm@1
|
130
|
rlm@1
|
131 </html>
|