* The CSS definition has been removed from the config.pl file and
[BackupPC.git] / lib / BackupPC / Lang / en.pm
1 #!/bin/perl
2
3 #my %lang;
4 #use strict;
5
6 # --------------------------------
7
8 $Lang{Start_Archive} = "Start Archive";
9 $Lang{Stop_Dequeue_Archive} = "Stop/Dequeue Archive";
10 $Lang{Start_Full_Backup} = "Start Full Backup";
11 $Lang{Start_Incr_Backup} = "Start Incr Backup";
12 $Lang{Stop_Dequeue_Backup} = "Stop/Dequeue Backup";
13 $Lang{Restore} = "Restore";
14
15 $Lang{Type_full} = "full";
16 $Lang{Type_incr} = "incremental";
17
18 # -----
19
20 $Lang{Only_privileged_users_can_view_admin_options} = "Only privileged users can view admin options.";
21 $Lang{H_Admin_Options} = "BackupPC Server: Admin Options";
22 $Lang{Admin_Options} = "Admin Options";
23 $Lang{Admin_Options_Page} = <<EOF;
24 \${h1(qq{$Lang{Admin_Options}})}
25 <br>
26 \${h2("Server Control")}
27 <form action="\$MyURL" method="get">
28 <table>
29   <!--<tr><td>Stop the server:<td><input type="submit" name="action" value="Stop">-->
30   <tr><td>Reload the server configuration:<td><input type="submit" name="action" value="Reload">
31 </table>
32 </form>
33 <!--
34 \${h2("Server Configuration")}
35 <ul>
36   <li><i>Other options can go here... e.g.,</i>
37   <li>Edit server configuration
38 </ul>
39 -->
40 EOF
41 $Lang{Unable_to_connect_to_BackupPC_server} = "Unable to connect to BackupPC server",
42             "This CGI script (\$MyURL) is unable to connect to the BackupPC"
43           . " server on \$Conf{ServerHost} port \$Conf{ServerPort}.  The error"
44           . " was: \$err.",
45             "Perhaps the BackupPC server is not running or there is a "
46           . " configuration error.  Please report this to your Sys Admin.";
47 $Lang{Admin_Start_Server} = <<EOF;
48 \${h1(qq{$Lang{Unable_to_connect_to_BackupPC_server}})}
49 <form action="\$MyURL" method="get">
50 The BackupPC server at <tt>\$Conf{ServerHost}</tt> port <tt>\$Conf{ServerPort}</tt>
51 is not currently running (maybe you just stopped it, or haven't yet started it).<br>
52 Do you want to start it?
53 <input type="hidden" name="action" value="startServer">
54 <input type="submit" value="Start Server" name="ignore">
55 </form>
56 EOF
57
58 # -----
59
60 $Lang{H_BackupPC_Server_Status} = "BackupPC Server Status";
61
62 $Lang{BackupPC_Server_Status}= <<EOF;
63 \${h1(qq{$Lang{H_BackupPC_Server_Status}})}
64
65 <p>
66 \${h2(\"General Server Information\")}
67
68 <ul>
69 <li> The servers PID is \$Info{pid},  on host \$Conf{ServerHost},
70      version \$Info{Version}, started at \$serverStartTime.
71 <li> This status was generated at \$now.
72 <li> The configuration was last loaded at \$configLoadTime.
73 <li> PCs will be next queued at \$nextWakeupTime.
74 <li> Other info:
75     <ul>
76         <li>\$numBgQueue pending backup requests from last scheduled wakeup,
77         <li>\$numUserQueue pending user backup requests,
78         <li>\$numCmdQueue pending command requests,
79         \$poolInfo
80         <li>Pool file system was recently at \$Info{DUlastValue}%
81             (\$DUlastTime), today\'s max is \$Info{DUDailyMax}% (\$DUmaxTime)
82             and yesterday\'s max was \$Info{DUDailyMaxPrev}%.
83     </ul>
84 </ul>
85
86 \${h2("Currently Running Jobs")}
87 <p>
88 <table class="tableStnd" border cellspacing="1" cellpadding="3">
89 <tr class="tableheader"><td> Host </td>
90     <td> Type </td>
91     <td> User </td>
92     <td> Start Time </td>
93     <td> Command </td>
94     <td align="center"> PID </td>
95     <td align="center"> Xfer PID </td>
96     </tr>
97 \$jobStr
98 </table>
99 <p>
100
101 \${h2("Failures that need attention")}
102 <p>
103 <table class="tableStnd" border cellspacing="1" cellpadding="3">
104 <tr class="tableheader"><td align="center"> Host </td>
105     <td align="center"> Type </td>
106     <td align="center"> User </td>
107     <td align="center"> Last Try </td>
108     <td align="center"> Details </td>
109     <td align="center"> Error Time </td>
110     <td> Last error (other than no ping) </td></tr>
111 \$statusStr
112 </table>
113 EOF
114
115 # --------------------------------
116 $Lang{BackupPC__Server_Summary} = "BackupPC: Server Summary";
117 $Lang{BackupPC__Archive} = "BackupPC: Archive";
118 $Lang{BackupPC_Summary} = <<EOF;
119
120 \${h1(qq{$Lang{BackupPC__Server_Summary}})}
121 <p>
122 This status was generated at \$now.
123 </p>
124
125 \${h2("Hosts with good Backups")}
126 <p>
127 There are \$hostCntGood hosts that have been backed up, for a total of:
128 <ul>
129 <li> \$fullTot full backups of total size \${fullSizeTot}GB
130      (prior to pooling and compression),
131 <li> \$incrTot incr backups of total size \${incrSizeTot}GB
132      (prior to pooling and compression).
133 </ul>
134 </p>
135 <table class="tableStnd" border cellpadding="3" cellspacing="1">
136 <tr class="tableheader"><td> Host </td>
137     <td align="center"> User </td>
138     <td align="center"> #Full </td>
139     <td align="center"> Full Age/days </td>
140     <td align="center"> Full Size/GB </td>
141     <td align="center"> Speed MB/sec </td>
142     <td align="center"> #Incr </td>
143     <td align="center"> Incr Age/days </td>
144     <td align="center"> State </td>
145     <td align="center"> Last attempt </td></tr>
146 \$strGood
147 </table>
148 <br><br>
149 \${h2("Hosts with no Backups")}
150 <p>
151 There are \$hostCntNone hosts with no backups.
152 <p>
153 <table class="tableStnd" border cellpadding="3" cellspacing="1">
154 <tr class="tableheader"><td> Host </td>
155     <td align="center"> User </td>
156     <td align="center"> #Full </td>
157     <td align="center"> Full Age/days </td>
158     <td align="center"> Full Size/GB </td>
159     <td align="center"> Speed MB/sec </td>
160     <td align="center"> #Incr </td>
161     <td align="center"> Incr Age/days </td>
162     <td align="center"> Current State </td>
163     <td align="center"> Last backup attempt </td></tr>
164 \$strNone
165 </table>
166 EOF
167
168 $Lang{BackupPC_Archive} = <<EOF;
169 \${h1(qq{$Lang{BackupPC__Archive}})}
170 <script language="javascript" type="text/javascript">
171 <!--
172
173     function checkAll(location)
174     {
175       for (var i=0;i<document.form1.elements.length;i++)
176       {
177         var e = document.form1.elements[i];
178         if ((e.checked || !e.checked) && e.name != \'all\') {
179             if (eval("document.form1."+location+".checked")) {
180                 e.checked = true;
181             } else {
182                 e.checked = false;
183             }
184         }
185       }
186     }
187
188     function toggleThis(checkbox)
189     {
190        var cb = eval("document.form1."+checkbox);
191        cb.checked = !cb.checked;
192     }
193
194 //-->
195 </script>
196
197 There are \$hostCntGood hosts that have been backed up for a total size of \${fullSizeTot}GB
198 <p>
199 <form name="form1" method="post" action="\$MyURL">
200 <input type="hidden" name="fcbMax" value="\$checkBoxCnt">
201 <input type="hidden" name="type" value="1">
202 <input type="hidden" name="host" value="\${EscHTML(\$archHost)}">
203 <input type="hidden" name="action" value="Archive">
204 <table class="tableStnd" border cellpadding="3" cellspacing="1">
205 <tr class="tableheader"><td align=center> Host</td>
206     <td align="center"> User </td>
207     <td align="center"> Backup Size </td>
208 \$strGood
209 \$checkAllHosts
210 </table>
211 </form>
212 <p>
213
214 EOF
215
216 $Lang{BackupPC_Archive2} = <<EOF;
217 \${h1(qq{$Lang{BackupPC__Archive}})}
218 About to archive the following hosts
219 <ul>
220 \$HostListStr
221 </ul>
222 <form action="\$MyURL" method="post">
223 \$hiddenStr
224 <input type="hidden" name="action" value="Archive">
225 <input type="hidden" name="host" value="\${EscHTML(\$archHost)}">
226 <input type="hidden" name="type" value="2">
227 <input type="hidden" value="0" name="archive_type">
228 <table class="tableStnd" border cellspacing="1" cellpadding="3">
229 \$paramStr
230 <tr>
231     <td colspan=2><input type="submit" value="Start the Archive" name=""></td>
232 </tr>
233 </form>
234 </table>
235 EOF
236
237 $Lang{BackupPC_Archive2_location} = <<EOF;
238 <tr>
239     <td>Archive Location/Device</td>
240     <td><input type="text" value="\$ArchiveDest" name="archive_device"></td>
241 </tr>
242 EOF
243
244 $Lang{BackupPC_Archive2_compression} = <<EOF;
245 <tr>
246     <td>Compression</td>
247     <td>
248     <input type="radio" value="0" name="compression" \$ArchiveCompNone>None<br>
249     <input type="radio" value="1" name="compression" \$ArchiveCompGzip>gzip<br>
250     <input type="radio" value="2" name="compression" \$ArchiveCompBzip2>bzip2
251     </td>
252 </tr>
253 EOF
254
255 $Lang{BackupPC_Archive2_parity} = <<EOF;
256 <tr>
257     <td>Number of Parity Files</td>
258     <td><input type="numeric" value="\$ArchivePar" name="par"></td>
259 </tr>
260 EOF
261
262 $Lang{BackupPC_Archive2_split} = <<EOF;
263 <tr>
264     <td>Split output into</td>
265     <td><input type="numeric" value="\$ArchiveSplit" name="splitsize">Megabytes</td>
266 </tr>
267 EOF
268
269 # -----------------------------------
270 $Lang{Pool_Stat} = <<EOF;
271         <li>Pool is \${poolSize}GB comprising \$info->{"\${name}FileCnt"} files
272             and \$info->{"\${name}DirCnt"} directories (as of \$poolTime),
273         <li>Pool hashing gives \$info->{"\${name}FileCntRep"} repeated
274             files with longest chain \$info->{"\${name}FileRepMax"},
275         <li>Nightly cleanup removed \$info->{"\${name}FileCntRm"} files of
276             size \${poolRmSize}GB (around \$poolTime),
277 EOF
278
279 # --------------------------------
280 $Lang{BackupPC__Backup_Requested_on__host} = "BackupPC: Backup Requested on \$host";
281 # --------------------------------
282 $Lang{REPLY_FROM_SERVER} = <<EOF;
283 \${h1(\$str)}
284 <p>
285 Reply from server was: \$reply
286 <p>
287 Go back to <a href="\$MyURL?host=\$host">\$host home page</a>.
288 EOF
289 # --------------------------------
290 $Lang{BackupPC__Start_Backup_Confirm_on__host} = "BackupPC: Start Backup Confirm on \$host";
291 # --------------------------------
292 $Lang{Are_you_sure_start} = <<EOF;
293 \${h1("Are you sure?")}
294 <p>
295 You are about to start a \$type backup on \$host.
296
297 <form action="\$MyURL" method="get">
298 <input type="hidden" name="host" value="\$host">
299 <input type="hidden" name="hostIP" value="\$ipAddr">
300 <input type="hidden" name="doit" value="1">
301 Do you really want to do this?
302 <input type="submit" value="\$In{action}" name="action">
303 <input type="submit" value="No" name="">
304 </form>
305 EOF
306 # --------------------------------
307 $Lang{BackupPC__Stop_Backup_Confirm_on__host} = "BackupPC: Stop Backup Confirm on \$host";
308 # --------------------------------
309 $Lang{Are_you_sure_stop} = <<EOF;
310
311 \${h1("Are you sure?")}
312
313 <p>
314 You are about to stop/dequeue backups on \$host;
315
316 <form action="\$MyURL" method="get">
317 <input type="hidden" name="host" value="\$host">
318 <input type="hidden" name="doit" value="1">
319 Also, please don\'t start another backup for
320 <input type="text" name="backoff" size="10" value="\$backoff"> hours.
321 <p>
322 Do you really want to do this?
323 <input type="submit" value="\$In{action}" name="action">
324 <input type="submit" value="No" name="">
325 </form>
326
327 EOF
328 # --------------------------------
329 $Lang{Only_privileged_users_can_view_queues_} = "Only privileged users can view queues.";
330 # --------------------------------
331 $Lang{Only_privileged_users_can_archive} = "Only privileged users can Archive.";
332 # --------------------------------
333 $Lang{BackupPC__Queue_Summary} = "BackupPC: Queue Summary";
334 # --------------------------------
335 $Lang{Backup_Queue_Summary} = <<EOF;
336 \${h1("Backup Queue Summary")}
337 <br><br>
338 \${h2("User Queue Summary")}
339 <p>
340 The following user requests are currently queued:
341 </p>
342 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
343 <tr class="tableheader"><td> Host </td>
344     <td> Req Time </td>
345     <td> User </td></tr>
346 \$strUser
347 </table>
348 <br><br>
349
350 \${h2("Background Queue Summary")}
351 <p>
352 The following background requests are currently queued:
353 </p>
354 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
355 <tr class="tableheader"><td> Host </td>
356     <td> Req Time </td>
357     <td> User </td></tr>
358 \$strBg
359 </table>
360 <br><br>
361 \${h2("Command Queue Summary")}
362 <p>
363 The following command requests are currently queued:
364 </p>
365 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
366 <tr class="tableheader"><td> Host </td>
367     <td> Req Time </td>
368     <td> User </td>
369     <td> Command </td></tr>
370 \$strCmd
371 </table>
372 EOF
373
374 # --------------------------------
375 $Lang{Backup_PC__Log_File__file} = "BackupPC: Log File \$file";
376 $Lang{Log_File__file__comment} = <<EOF;
377 \${h1("Log File \$file \$comment")}
378 <p>
379 EOF
380 # --------------------------------
381 $Lang{Contents_of_log_file} = <<EOF;
382 Contents of log file <tt>\$file</tt>, modified \$mtimeStr \$comment
383 EOF
384
385 # --------------------------------
386 $Lang{skipped__skipped_lines} = "[ skipped \$skipped lines ]\n";
387 # --------------------------------
388 $Lang{_pre___Can_t_open_log_file__file} = "<pre>\nCan\'t open log file \$file\n";
389
390 # --------------------------------
391 $Lang{BackupPC__Log_File_History} = "BackupPC: Log File History";
392 $Lang{Log_File_History__hdr} = <<EOF;
393 \${h1("Log File History \$hdr")}
394 <p>
395 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
396 <tr class="tableheader"><td align="center"> File </td>
397     <td align="center"> Size </td>
398     <td align="center"> Modification time </td></tr>
399 \$str
400 </table>
401 EOF
402
403 # -------------------------------
404 $Lang{Recent_Email_Summary} = <<EOF;
405 \${h1("Recent Email Summary (Reverse time order)")}
406 <p>
407 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
408 <tr class="tableheader"><td align="center"> Recipient </td>
409     <td align="center"> Host </td>
410     <td align="center"> Time </td>
411     <td align="center"> Subject </td></tr>
412 \$str
413 </table>
414 EOF
415  
416
417 # ------------------------------
418 $Lang{Browse_backup__num_for__host} = "BackupPC: Browse backup \$num for \$host";
419
420 # ------------------------------
421 $Lang{Restore_Options_for__host} = "BackupPC: Restore Options for \$host";
422 $Lang{Restore_Options_for__host2} = <<EOF;
423 \${h1("Restore Options for \$host")}
424 <p>
425 You have selected the following files/directories from
426 share \$share, backup number #\$num:
427 <ul>
428 \$fileListStr
429 </ul>
430 </p><p>
431 You have three choices for restoring these files/directories.
432 Please select one of the following options.
433 </p>
434 \${h2("Option 1: Direct Restore")}
435 <p>
436 EOF
437
438 $Lang{Restore_Options_for__host_Option1} = <<EOF;
439 You can start a restore that will restore these files directly onto
440 \$host.
441 </p><p>
442 <b>Warning:</b> any existing files that match the ones you have
443 selected will be overwritten!
444 </p>
445 <form action="\$MyURL" method="post" name="direct">
446 <input type="hidden" name="host" value="\${EscHTML(\$host)}">
447 <input type="hidden" name="num" value="\$num">
448 <input type="hidden" name="type" value="3">
449 \$hiddenStr
450 <input type="hidden" value="\$In{action}" name="action">
451 <table border="0">
452 <tr>
453     <td>Restore the files to host</td>
454     <td><!--<input type="text" size="40" value="\${EscHTML(\$host)}"
455          name="hostDest">-->
456          <select name="hostDest" onChange="document.direct.shareDest.value=''">
457          \$hostDestSel
458          </select>
459          <script language="Javascript">
460          function myOpen(URL) {
461                 window.open(URL,'','width=500,height=400');
462          }
463          </script>
464          <!--<a href="javascript:myOpen('\$MyURL?action=findShares&host='+document.direct.hostDest.options.value)">Search for available shares (NOT IMPLEMENTED)</a>--></td>
465 </tr><tr>
466     <td>Restore the files to share</td>
467     <td><input type="text" size="40" value="\${EscHTML(\$share)}"
468          name="shareDest"></td>
469 </tr><tr>
470     <td>Restore the files below dir<br>(relative to share)</td>
471     <td valign="top"><input type="text" size="40" maxlength="256"
472         value="\${EscHTML(\$pathHdr)}" name="pathHdr"></td>
473 </tr><tr>
474     <td><input type="submit" value="Start Restore" name=""></td>
475 </table>
476 </form>
477 EOF
478
479 $Lang{Restore_Options_for__host_Option1_disabled} = <<EOF;
480 Direct restore has been disabled for host \${EscHTML(\$hostDest)}.
481 Please select one of the other restore options.
482 EOF
483
484 # ------------------------------
485 $Lang{Option_2__Download_Zip_archive} = <<EOF;
486 <p>
487 \${h2("Option 2: Download Zip archive")}
488 <p>
489 You can download a Zip archive containing all the files/directories you have
490 selected.  You can then use a local application, such as WinZip,
491 to view or extract any of the files.
492 </p><p>
493 <b>Warning:</b> depending upon which files/directories you have selected,
494 this archive might be very very large.  It might take many minutes to
495 create and transfer the archive, and you will need enough local disk
496 space to store it.
497 </p>
498 <form action="\$MyURL" method="post">
499 <input type="hidden" name="host" value="\${EscHTML(\$host)}">
500 <input type="hidden" name="num" value="\$num">
501 <input type="hidden" name="type" value="2">
502 \$hiddenStr
503 <input type="hidden" value="\$In{action}" name="action">
504 <input type="checkbox" value="1" name="relative" checked> Make archive relative
505 to \${EscHTML(\$pathHdr eq "" ? "/" : \$pathHdr)}
506 (otherwise archive will contain full paths).
507 <br>
508 Compression (0=off, 1=fast,...,9=best)
509 <input type="text" size="6" value="5" name="compressLevel">
510 <br>
511 <input type="submit" value="Download Zip File" name="">
512 </form>
513 EOF
514
515 # ------------------------------
516
517 $Lang{Option_2__Download_Zip_archive2} = <<EOF;
518 <p>
519 \${h2("Option 2: Download Zip archive")}
520 <p>
521 Archive::Zip is not installed so you will not be able to download a
522 zip archive.
523 Please ask your system adminstrator to install Archive::Zip from
524 <a href="http://www.cpan.org">www.cpan.org</a>.
525 </p>
526 EOF
527
528
529 # ------------------------------
530 $Lang{Option_3__Download_Zip_archive} = <<EOF;
531 \${h2("Option 3: Download Tar archive")}
532 <p>
533 You can download a Tar archive containing all the files/directories you
534 have selected.  You can then use a local application, such as tar or
535 WinZip to view or extract any of the files.
536 </p><p>
537 <b>Warning:</b> depending upon which files/directories you have selected,
538 this archive might be very very large.  It might take many minutes to
539 create and transfer the archive, and you will need enough local disk
540 space to store it.
541 </p>
542 <form action="\$MyURL" method="post">
543 <input type="hidden" name="host" value="\${EscHTML(\$host)}">
544 <input type="hidden" name="num" value="\$num">
545 <input type="hidden" name="type" value="1">
546 \$hiddenStr
547 <input type="hidden" value="\$In{action}" name="action">
548 <input type="checkbox" value="1" name="relative" checked> Make archive relative
549 to \${EscHTML(\$pathHdr eq "" ? "/" : \$pathHdr)}
550 (otherwise archive will contain full paths).
551 <br>
552 <input type="submit" value="Download Tar File" name="">
553 </form>
554 EOF
555
556
557 # ------------------------------
558 $Lang{Restore_Confirm_on__host} = "BackupPC: Restore Confirm on \$host";
559
560 $Lang{Are_you_sure} = <<EOF;
561 \${h1("Are you sure?")}
562 <p>
563 You are about to start a restore directly to the machine \$In{hostDest}.
564 The following files will be restored to share \$In{shareDest}, from
565 backup number \$num:
566 <p>
567 <table border>
568 <tr><td>Original file/dir</td><td>Will be restored to</td></tr>
569 \$fileListStr
570 </table>
571
572 <form action="\$MyURL" method="post">
573 <input type="hidden" name="host" value="\${EscHTML(\$host)}">
574 <input type="hidden" name="hostDest" value="\${EscHTML(\$In{hostDest})}">
575 <input type="hidden" name="shareDest" value="\${EscHTML(\$In{shareDest})}">
576 <input type="hidden" name="pathHdr" value="\${EscHTML(\$In{pathHdr})}">
577 <input type="hidden" name="num" value="\$num">
578 <input type="hidden" name="type" value="4">
579 \$hiddenStr
580 Do you really want to do this?
581 <input type="submit" value="\$In{action}" name="action">
582 <input type="submit" value="No" name="">
583 </form>
584 EOF
585
586
587 # --------------------------
588 $Lang{Restore_Requested_on__hostDest} = "BackupPC: Restore Requested on \$hostDest";
589 $Lang{Reply_from_server_was___reply} = <<EOF;
590 \${h1(\$str)}
591 <p>
592 Reply from server was: \$reply
593 <p>
594 Go back to <a href="\$MyURL?host=\$hostDest">\$hostDest home page</a>.
595 EOF
596
597 $Lang{BackupPC_Archive_Reply_from_server} = <<EOF;
598 \${h1(\$str)}
599 <p>
600 Reply from server was: \$reply
601 EOF
602
603
604 # -------------------------
605 $Lang{Host__host_Backup_Summary} = "BackupPC: Host \$host Backup Summary";
606
607 $Lang{Host__host_Backup_Summary2} = <<EOF;
608 \${h1("Host \$host Backup Summary")}
609 <p>
610 \$warnStr
611 <ul>
612 \$statusStr
613 </ul>
614 </p>
615 \${h2("User Actions")}
616 <p>
617 <form action="\$MyURL" method="get">
618 <input type="hidden" name="host" value="\$host">
619 \$startIncrStr
620 <input type="submit" value="$Lang{Start_Full_Backup}" name="action">
621 <input type="submit" value="$Lang{Stop_Dequeue_Backup}" name="action">
622 </form>
623 </p>
624 \${h2("Backup Summary")}
625 <p>
626 Click on the backup number to browse and restore backup files.
627 </p>
628 <table class="tableStnd" border cellspacing="1" cellpadding="3">
629 <tr class="tableheader"><td align="center"> Backup# </td>
630     <td align="center"> Type </td>
631     <td align="center"> Filled </td>
632     <td align="center"> Start Date </td>
633     <td align="center"> Duration/mins </td>
634     <td align="center"> Age/days </td>
635     <td align="center"> Server Backup Path </td>
636 </tr>
637 \$str
638 </table>
639 <p>
640
641 \$restoreStr
642 </p>
643 <br><br>
644 \${h2("Xfer Error Summary")}
645 <br><br>
646 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
647 <tr class="tableheader"><td align="center"> Backup# </td>
648     <td align="center"> Type </td>
649     <td align="center"> View </td>
650     <td align="center"> #Xfer errs </td>
651     <td align="center"> #bad files </td>
652     <td align="center"> #bad share </td>
653     <td align="center"> #tar errs </td>
654 </tr>
655 \$errStr
656 </table>
657 <br><br>
658
659 \${h2("File Size/Count Reuse Summary")}
660 <p>
661 Existing files are those already in the pool; new files are those added
662 to the pool.
663 Empty files and SMB errors aren\'t counted in the reuse and new counts.
664 </p>
665 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
666 <tr class="tableheader"><td colspan="2" bgcolor="#ffffff"></td>
667     <td align="center" colspan="3"> Totals </td>
668     <td align="center" colspan="2"> Existing Files </td>
669     <td align="center" colspan="2"> New Files </td>
670 </tr>
671 <tr class="tableheader">
672     <td align="center"> Backup# </td>
673     <td align="center"> Type </td>
674     <td align="center"> #Files </td>
675     <td align="center"> Size/MB </td>
676     <td align="center"> MB/sec </td>
677     <td align="center"> #Files </td>
678     <td align="center"> Size/MB </td>
679     <td align="center"> #Files </td>
680     <td align="center"> Size/MB </td>
681 </tr>
682 \$sizeStr
683 </table>
684 <br><br>
685
686 \${h2("Compression Summary")}
687 <p>
688 Compression performance for files already in the pool and newly
689 compressed files.
690 </p>
691 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
692 <tr class="tableheader"><td colspan="3" bgcolor="#ffffff"></td>
693     <td align="center" colspan="3"> Existing Files </td>
694     <td align="center" colspan="3"> New Files </td>
695 </tr>
696 <tr class="tableheader"><td align="center"> Backup# </td>
697     <td align="center"> Type </td>
698     <td align="center"> Comp Level </td>
699     <td align="center"> Size/MB </td>
700     <td align="center"> Comp/MB </td>
701     <td align="center"> Comp </td>
702     <td align="center"> Size/MB </td>
703     <td align="center"> Comp/MB </td>
704     <td align="center"> Comp </td>
705 </tr>
706 \$compStr
707 </table>
708 <br><br>
709 EOF
710
711 $Lang{Host__host_Archive_Summary} = "BackupPC: Host \$host Archive Summary";
712 $Lang{Host__host_Archive_Summary2} = <<EOF;
713 \${h1("Host \$host Archive Summary")}
714 <p>
715 \$warnStr
716 <ul>
717 \$statusStr
718 </ul>
719
720 \${h2("User Actions")}
721 <p>
722 <form action="\$MyURL" method="get">
723 <input type="hidden" name="archivehost" value="\$host">
724 <input type="hidden" name="host" value="\$host">
725 <input type="submit" value="$Lang{Start_Archive}" name="action">
726 <input type="submit" value="$Lang{Stop_Dequeue_Archive}" name="action">
727 </form>
728
729 \$ArchiveStr
730
731 EOF
732
733 # -------------------------
734 $Lang{Error} = "BackupPC: Error";
735 $Lang{Error____head} = <<EOF;
736 \${h1("Error: \$head")}
737 <p>\$mesg</p>
738 EOF
739
740 # -------------------------
741 $Lang{NavSectionTitle_} = "Server";
742
743 # -------------------------
744 $Lang{Backup_browse_for__host} = <<EOF;
745 \${h1("Backup browse for \$host")}
746
747 <script language="javascript" type="text/javascript">
748 <!--
749
750     function checkAll(location)
751     {
752       for (var i=0;i<document.form1.elements.length;i++)
753       {
754         var e = document.form1.elements[i];
755         if ((e.checked || !e.checked) && e.name != \'all\') {
756             if (eval("document.form1."+location+".checked")) {
757                 e.checked = true;
758             } else {
759                 e.checked = false;
760             }
761         }
762       }
763     }
764     
765     function toggleThis(checkbox)
766     {
767        var cb = eval("document.form1."+checkbox);
768        cb.checked = !cb.checked;        
769     }
770
771 //-->
772 </script>
773
774 <form name="form0" method="post" action="\$MyURL">
775 <input type="hidden" name="num" value="\$num">
776 <input type="hidden" name="host" value="\$host">
777 <input type="hidden" name="share" value="\${EscHTML(\$share)}">
778 <input type="hidden" name="action" value="browse">
779 <ul>
780 <li> You are browsing backup #\$num, which started around \$backupTime
781         (\$backupAge days ago),
782 \$filledBackup
783 <li> Enter directory: <input type="text" name="dir" size="50" maxlength="4096" value="\${EscHTML(\$dir)}"> <input type="submit" value="\$Lang->{Go}" name="Submit">
784 <li> Click on a directory below to navigate into that directory,
785 <li> Click on a file below to restore that file,
786 <li> You can view the backup <a href="\$MyURL?action=dirHistory&host=\${EscURI(\$host)}&share=\$shareURI&dir=\$pathURI">history</a> of the current directory.
787 </ul>
788 </form>
789
790 \${h2("Contents of \${EscHTML(\$dirDisplay)}")}
791 <form name="form1" method="post" action="\$MyURL">
792 <input type="hidden" name="num" value="\$num">
793 <input type="hidden" name="host" value="\$host">
794 <input type="hidden" name="share" value="\${EscHTML(\$share)}">
795 <input type="hidden" name="fcbMax" value="\$checkBoxCnt">
796 <input type="hidden" name="action" value="$Lang{Restore}">
797 <br>
798 <table width="100%">
799 <tr><td valign="top">
800     <br><table align="center" border="0" cellpadding="0" cellspacing="0" bgcolor="#ffffff">
801     \$dirStr
802     </table>
803 </td><td width="3%">
804 </td><td valign="top">
805     <br>
806         <table border="0" width="100%" align="left" cellpadding="3" cellspacing="1">
807         \$fileHeader
808         \$topCheckAll
809         \$fileStr
810         \$checkAll
811         </table>
812     </td></tr></table>
813 <br>
814 <!--
815 This is now in the checkAll row
816 <input type="submit" name="Submit" value="Restore selected files">
817 -->
818 </form>
819 EOF
820
821 # ------------------------------
822 $Lang{DirHistory_backup_for__host} = "BackupPC: Directory backup history for \$host";
823
824 #
825 # These two strings are used to build the links for directories and
826 # file versions.  Files are appended with a version number.
827 #
828 $Lang{DirHistory_dirLink}  = "dir";
829 $Lang{DirHistory_fileLink} = "v";
830
831 $Lang{DirHistory_for__host} = <<EOF;
832 \${h1("Directory backup history for \$host")}
833 <p>
834 This display shows each unique version of files across all
835 the backups:
836 <ul>
837 <li> Click on a backup number to return to the backup browser,
838 <li> Click on a directory link (\$Lang->{DirHistory_dirLink}) to navigate
839      into that directory,
840 <li> Click on a file version link (\$Lang->{DirHistory_fileLink}0,
841      \$Lang->{DirHistory_fileLink}1, ...) to download that file,
842 <li> Files with the same contents between different backups have the same
843      version number,
844 <li> Files or directories not present in a particular backup have an
845      empty box.
846 <li> Files shown with the same version might have different attributes.
847      Select the backup number to see the file attributes.
848 </ul>
849
850 \${h2("History of \${EscHTML(\$dirDisplay)}")}
851
852 <br>
853 <table cellspacing="2" cellpadding="3">
854 <tr class="fviewheader"><td>Backup number</td>\$backupNumStr</tr>
855 <tr class="fviewheader"><td>Backup time</td>\$backupTimeStr</tr>
856 \$fileStr
857 </table>
858 EOF
859
860 # ------------------------------
861 $Lang{Restore___num_details_for__host} = "BackupPC: Restore #\$num details for \$host";
862
863 $Lang{Restore___num_details_for__host2} = <<EOF;
864 \${h1("Restore #\$num Details for \$host")}
865 <p>
866 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="90%">
867 <tr><td class="tableheader"> Number </td><td class="border"> \$Restores[\$i]{num} </td></tr>
868 <tr><td class="tableheader"> Requested by </td><td class="border"> \$RestoreReq{user} </td></tr>
869 <tr><td class="tableheader"> Request time </td><td class="border"> \$reqTime </td></tr>
870 <tr><td class="tableheader"> Result </td><td class="border"> \$Restores[\$i]{result} </td></tr>
871 <tr><td class="tableheader"> Error Message </td><td class="border"> \$Restores[\$i]{errorMsg} </td></tr>
872 <tr><td class="tableheader"> Source host </td><td class="border"> \$RestoreReq{hostSrc} </td></tr>
873 <tr><td class="tableheader"> Source backup num </td><td class="border"> \$RestoreReq{num} </td></tr>
874 <tr><td class="tableheader"> Source share </td><td class="border"> \$RestoreReq{shareSrc} </td></tr>
875 <tr><td class="tableheader"> Destination host </td><td class="border"> \$RestoreReq{hostDest} </td></tr>
876 <tr><td class="tableheader"> Destination share </td><td class="border"> \$RestoreReq{shareDest} </td></tr>
877 <tr><td class="tableheader"> Start time </td><td class="border"> \$startTime </td></tr>
878 <tr><td class="tableheader"> Duration </td><td class="border"> \$duration min </td></tr>
879 <tr><td class="tableheader"> Number of files </td><td class="border"> \$Restores[\$i]{nFiles} </td></tr>
880 <tr><td class="tableheader"> Total size </td><td class="border"> \${MB} MB </td></tr>
881 <tr><td class="tableheader"> Transfer rate </td><td class="border"> \$MBperSec MB/sec </td></tr>
882 <tr><td class="tableheader"> TarCreate errors </td><td class="border"> \$Restores[\$i]{tarCreateErrs} </td></tr>
883 <tr><td class="tableheader"> Xfer errors </td><td class="border"> \$Restores[\$i]{xferErrs} </td></tr>
884 <tr><td class="tableheader"> Xfer log file </td><td class="border">
885 <a href="\$MyURL?action=view&type=RestoreLOG&num=\$Restores[\$i]{num}&host=\$host">View</a>,
886 <a href="\$MyURL?action=view&type=RestoreErr&num=\$Restores[\$i]{num}&host=\$host">Errors</a>
887 </tr></tr>
888 </table>
889 </p>
890 \${h1("File/Directory list")}
891 <p>
892 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="100%">
893 <tr class="tableheader"><td>Original file/dir</td><td>Restored to</td></tr>
894 \$fileListStr
895 </table>
896 EOF
897
898 # ------------------------------
899 $Lang{Archive___num_details_for__host} = "BackupPC: Archive #\$num details for \$host";
900
901 $Lang{Archive___num_details_for__host2 } = <<EOF;
902 \${h1("Archive #\$num Details for \$host")}
903 <p>
904 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="50%">
905 <tr><td class="tableheader"> Number </td><td class="border"> \$Archives[\$i]{num} </td></tr>
906 <tr><td class="tableheader"> Requested by </td><td class="border"> \$ArchiveReq{user} </td></tr>
907 <tr><td class="tableheader"> Request time </td><td class="border"> \$reqTime </td></tr>
908 <tr><td class="tableheader"> Result </td><td class="border"> \$Archives[\$i]{result} </td></tr>
909 <tr><td class="tableheader"> Error Message </td><td class="border"> \$Archives[\$i]{errorMsg} </td></tr>
910 <tr><td class="tableheader"> Start time </td><td class="border"> \$startTime </td></tr>
911 <tr><td class="tableheader"> Duration </td><td class="border"> \$duration min </td></tr>
912 <tr><td class="tableheader"> Xfer log file </td><td class="border">
913 <a href="\$MyURL?action=view&type=ArchiveLOG&num=\$Archives[\$i]{num}&host=\$host">View</a>,
914 <a href="\$MyURL?action=view&type=ArchiveErr&num=\$Archives[\$i]{num}&host=\$host">Errors</a>
915 </tr></tr>
916 </table>
917 <p>
918 \${h1("Host list")}
919 <p>
920 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
921 <tr class="tableheader"><td>Host</td><td>Backup Number</td></tr>
922 \$HostListStr
923 </table>
924 EOF
925
926 # -----------------------------------
927 $Lang{Email_Summary} = "BackupPC: Email Summary";
928
929 # -----------------------------------
930 #  !! ERROR messages !!
931 # -----------------------------------
932 $Lang{BackupPC__Lib__new_failed__check_apache_error_log} = "BackupPC::Lib->new failed: check apache error_log\n";
933 $Lang{Wrong_user__my_userid_is___} =  
934               "Wrong user: my userid is \$>, instead of \$uid"
935             . "(\$Conf{BackupPCUser})\n";
936 # $Lang{Only_privileged_users_can_view_PC_summaries} = "Only privileged users can view PC summaries.";
937 $Lang{Only_privileged_users_can_stop_or_start_backups} = 
938                   "Only privileged users can stop or start backups on"
939                 . " \${EscHTML(\$host)}.";
940 $Lang{Invalid_number__num} = "Invalid number \$num";
941 $Lang{Unable_to_open__file__configuration_problem} = "Unable to open \$file: configuration problem?";
942 $Lang{Only_privileged_users_can_view_log_or_config_files} = "Only privileged users can view log or config files.";
943 $Lang{Only_privileged_users_can_view_log_files} = "Only privileged users can view log files.";
944 $Lang{Only_privileged_users_can_view_email_summaries} = "Only privileged users can view email summaries.";
945 $Lang{Only_privileged_users_can_browse_backup_files} = "Only privileged users can browse backup files"
946                 . " for host \${EscHTML(\$In{host})}.";
947 $Lang{Empty_host_name} = "Empty host name.";
948 $Lang{Directory___EscHTML} = "Directory \${EscHTML(\"\$TopDir/pc/\$host/\$num\")}"
949                     . " is empty";
950 $Lang{Can_t_browse_bad_directory_name2} = "Can\'t browse bad directory name"
951                     . " \${EscHTML(\$relDir)}";
952 $Lang{Only_privileged_users_can_restore_backup_files} = "Only privileged users can restore backup files"
953                 . " for host \${EscHTML(\$In{host})}.";
954 $Lang{Bad_host_name} = "Bad host name \${EscHTML(\$host)}";
955 $Lang{You_haven_t_selected_any_files__please_go_Back_to} = "You haven\'t selected any files; please go Back to"
956                 . " select some files.";
957 $Lang{You_haven_t_selected_any_hosts} = "You haven\'t selected any hosts; please go Back to"
958                 . " select some hosts.";
959 $Lang{Nice_try__but_you_can_t_put} = "Nice try, but you can\'t put \'..\' in any of the file names";
960 $Lang{Host__doesn_t_exist} = "Host \${EscHTML(\$In{hostDest})} doesn\'t exist";
961 $Lang{You_don_t_have_permission_to_restore_onto_host} = "You don\'t have permission to restore onto host"
962                     . " \${EscHTML(\$In{hostDest})}";
963 $Lang{Can_t_open_create} = "Can\'t open/create "
964                     . "\${EscHTML(\"\$TopDir/pc/\$hostDest/\$reqFileName\")}";
965 $Lang{Only_privileged_users_can_restore_backup_files2} = "Only privileged users can restore backup files"
966                 . " for host \${EscHTML(\$host)}.";
967 $Lang{Empty_host_name} = "Empty host name";
968 $Lang{Unknown_host_or_user} = "Unknown host or user \${EscHTML(\$host)}";
969 $Lang{Only_privileged_users_can_view_information_about} = "Only privileged users can view information about"
970                 . " host \${EscHTML(\$host)}." ;
971 $Lang{Only_privileged_users_can_view_archive_information} = "Only privileged users can view archive information.";
972 $Lang{Only_privileged_users_can_view_restore_information} = "Only privileged users can view restore information.";
973 $Lang{Restore_number__num_for_host__does_not_exist} = "Restore number \$num for host \${EscHTML(\$host)} does"
974                 . " not exist.";
975 $Lang{Archive_number__num_for_host__does_not_exist} = "Archive number \$num for host \${EscHTML(\$host)} does"
976                 . " not exist.";
977 $Lang{Can_t_find_IP_address_for} = "Can\'t find IP address for \${EscHTML(\$host)}";
978 $Lang{host_is_a_DHCP_host} = <<EOF;
979 \$host is a DHCP host, and I don\'t know its IP address.  I checked the
980 netbios name of \$ENV{REMOTE_ADDR}\$tryIP, and found that that machine
981 is not \$host.
982 <p>
983 Until I see \$host at a particular DHCP address, you can only
984 start this request from the client machine itself.
985 EOF
986
987 # ------------------------------------
988 # !! Server Mesg !!
989 # ------------------------------------
990
991 $Lang{Backup_requested_on_DHCP__host} = "Backup requested on DHCP \$host (\$In{hostIP}) by"
992                                       . " \$User from \$ENV{REMOTE_ADDR}";
993 $Lang{Backup_requested_on__host_by__User} = "Backup requested on \$host by \$User";
994 $Lang{Backup_stopped_dequeued_on__host_by__User} = "Backup stopped/dequeued on \$host by \$User";
995 $Lang{Restore_requested_to_host__hostDest__backup___num} = "Restore requested to host \$hostDest, backup #\$num,"
996              . " by \$User from \$ENV{REMOTE_ADDR}";
997 $Lang{Archive_requested} = "Archive requested by \$User from \$ENV{REMOTE_ADDR}";
998
999 # -------------------------------------------------
1000 # ------- Stuff that was forgotten ----------------
1001 # -------------------------------------------------
1002
1003 $Lang{Status} = "Status";
1004 $Lang{PC_Summary} = "PC Summary";
1005 $Lang{LOG_file} = "LOG file";
1006 $Lang{LOG_files} = "LOG files";
1007 $Lang{Old_LOGs} = "Old LOGs";
1008 $Lang{Email_summary} = "Email summary";
1009 $Lang{Config_file} = "Config file";
1010 $Lang{Hosts_file} = "Hosts file";
1011 $Lang{Current_queues} = "Current queues";
1012 $Lang{Documentation} = "Documentation";
1013
1014 #$Lang{Host_or_User_name} = "<small>Host or User name:</small>";
1015 $Lang{Go} = "Go";
1016 $Lang{Hosts} = "Hosts";
1017 $Lang{Select_a_host} = "Select a host...";
1018
1019 $Lang{There_have_been_no_archives} = "<h2> There have been no archives </h2>\n";
1020 $Lang{This_PC_has_never_been_backed_up} = "<h2> This PC has never been backed up!! </h2>\n";
1021 $Lang{This_PC_is_used_by} = "<li>This PC is used by \${UserLink(\$user)}";
1022
1023 $Lang{Extracting_only_Errors} = "(Extracting only Errors)";
1024 $Lang{XferLOG} = "XferLOG";
1025 $Lang{Errors}  = "Errors";
1026
1027 # ------------
1028 $Lang{Last_email_sent_to__was_at___subject} = <<EOF;
1029 <li>Last email sent to \${UserLink(\$user)} was at \$mailTime, subject "\$subj".
1030 EOF
1031 # ------------
1032 $Lang{The_command_cmd_is_currently_running_for_started} = <<EOF;
1033 <li>The command \$cmd is currently running for \$host, started \$startTime.
1034 EOF
1035
1036 # -----------
1037 $Lang{Host_host_is_queued_on_the_background_queue_will_be_backed_up_soon} = <<EOF;
1038 <li>Host \$host is queued on the background queue (will be backed up soon).
1039 EOF
1040
1041 # ----------
1042 $Lang{Host_host_is_queued_on_the_user_queue__will_be_backed_up_soon} = <<EOF;
1043 <li>Host \$host is queued on the user queue (will be backed up soon).
1044 EOF
1045
1046 # ---------
1047 $Lang{A_command_for_host_is_on_the_command_queue_will_run_soon} = <<EOF;
1048 <li>A command for \$host is on the command queue (will run soon).
1049 EOF
1050
1051 # --------
1052 $Lang{Last_status_is_state_StatusHost_state_reason_as_of_startTime} = <<EOF;
1053 <li>Last status is state \"\$Lang->{\$StatusHost{state}}\"\$reason as of \$startTime.
1054 EOF
1055
1056 # --------
1057 $Lang{Last_error_is____EscHTML_StatusHost_error} = <<EOF;
1058 <li>Last error is \"\${EscHTML(\$StatusHost{error})}\".
1059 EOF
1060
1061 # ------
1062 $Lang{Pings_to_host_have_failed_StatusHost_deadCnt__consecutive_times} = <<EOF;
1063 <li>Pings to \$host have failed \$StatusHost{deadCnt} consecutive times.
1064 EOF
1065
1066 # -----
1067 $Lang{Prior_to_that__pings} = "Prior to that, pings";
1068
1069 # -----
1070 $Lang{priorStr_to_host_have_succeeded_StatusHostaliveCnt_consecutive_times} = <<EOF;
1071 <li>\$priorStr to \$host have succeeded \$StatusHost{aliveCnt}
1072         consecutive times.
1073 EOF
1074
1075 $Lang{Because__host_has_been_on_the_network_at_least__Conf_BlackoutGoodCnt_consecutive_times___} = <<EOF;
1076 <li>Because \$host has been on the network at least \$Conf{BlackoutGoodCnt}
1077 consecutive times, it will not be backed up from \$blackoutStr.
1078 EOF
1079
1080 $Lang{__time0_to__time1_on__days} = "\$t0 to \$t1 on \$days";
1081
1082 $Lang{Backups_are_deferred_for_hours_hours_change_this_number} = <<EOF;
1083 <li>Backups are deferred for \$hours hours
1084 (<a href=\"\$MyURL?action=\${EscURI(\$Lang->{Stop_Dequeue_Archive})}&host=\$host\">change this number</a>).
1085 EOF
1086
1087 $Lang{tryIP} = " and \$StatusHost{dhcpHostIP}";
1088
1089 # $Lang{Host_Inhost} = "Host \$In{host}";
1090
1091 $Lang{checkAll} = <<EOF;
1092 <tr><td class="fviewborder">
1093 <input type="checkbox" name="allFiles" onClick="return checkAll('allFiles');">&nbsp;Select all
1094 </td><td colspan="5" align="center" class="fviewborder">
1095 <input type="submit" name="Submit" value="Restore selected files">
1096 </td></tr>
1097 EOF
1098
1099 $Lang{checkAllHosts} = <<EOF;
1100 <tr><td class="fviewborder">
1101 <input type="checkbox" name="allFiles" onClick="return checkAll('allFiles');">&nbsp;Select all
1102 </td><td colspan="2" align="center" class="fviewborder">
1103 <input type="submit" name="Submit" value="Archive selected hosts">
1104 </td></tr>
1105 EOF
1106
1107 $Lang{fileHeader} = <<EOF;
1108     <tr class="fviewheader"><td align=center> Name</td>
1109        <td align="center"> Type</td>
1110        <td align="center"> Mode</td>
1111        <td align="center"> #</td>
1112        <td align="center"> Size</td>
1113        <td align="center"> Date modified</td>
1114     </tr>
1115 EOF
1116
1117 $Lang{Home} = "Home";
1118 $Lang{Browse} = "Browse backups";
1119 $Lang{Last_bad_XferLOG} = "Last bad XferLOG";
1120 $Lang{Last_bad_XferLOG_errors_only} = "Last bad XferLOG (errors&nbsp;only)";
1121
1122 $Lang{This_display_is_merged_with_backup} = <<EOF;
1123 <li> This display is merged with backup #\$numF.
1124 EOF
1125
1126 $Lang{Visit_this_directory_in_backup} = <<EOF;
1127 <li> Select the backup you wish to view: <select onChange="window.location=this.value">\$otherDirs </select>
1128 EOF
1129
1130 $Lang{Restore_Summary} = <<EOF;
1131 \${h2("Restore Summary")}
1132 <p>
1133 Click on the restore number for more details.
1134 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
1135 <tr class="tableheader"><td align="center"> Restore# </td>
1136     <td align="center"> Result </td>
1137     <td align="right"> Start Date</td>
1138     <td align="right"> Dur/mins</td>
1139     <td align="right"> #files </td>
1140     <td align="right"> MB </td>
1141     <td align="right"> #tar errs </td>
1142     <td align="right"> #xferErrs </td>
1143 </tr>
1144 \$restoreStr
1145 </table>
1146 <p>
1147 EOF
1148
1149 $Lang{Archive_Summary} = <<EOF;
1150 \${h2("Archive Summary")}
1151 <p>
1152 Click on the archive number for more details.
1153 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
1154 <tr class="tableheader"><td align="center"> Archive# </td>
1155     <td align="center"> Result </td>
1156     <td align="right"> Start Date</td>
1157     <td align="right"> Dur/mins</td>
1158 </tr>
1159 \$ArchiveStr
1160 </table>
1161 <p>
1162 EOF
1163
1164 $Lang{BackupPC__Documentation} = "BackupPC: Documentation";
1165
1166 $Lang{No} = "no";
1167 $Lang{Yes} = "yes";
1168
1169 $Lang{The_directory_is_empty} = <<EOF;
1170 <tr><td bgcolor="#ffffff">The directory \${EscHTML(\$dirDisplay)} is empty
1171 </td></tr>
1172 EOF
1173
1174 #$Lang{on} = "on";
1175 $Lang{off} = "off";
1176
1177 $Lang{backupType_full}    = "full";
1178 $Lang{backupType_incr}    = "incr";
1179 $Lang{backupType_partial} = "partial";
1180
1181 $Lang{failed} = "failed";
1182 $Lang{success} = "success";
1183 $Lang{and} = "and";
1184
1185 # ------
1186 # Hosts states and reasons
1187 $Lang{Status_idle} = "idle";
1188 $Lang{Status_backup_starting} = "backup starting";
1189 $Lang{Status_backup_in_progress} = "backup in progress";
1190 $Lang{Status_restore_starting} = "restore starting";
1191 $Lang{Status_restore_in_progress} = "restore in progress";
1192 $Lang{Status_link_pending} = "link pending";
1193 $Lang{Status_link_running} = "link running";
1194
1195 $Lang{Reason_backup_done}    = "backup done";
1196 $Lang{Reason_restore_done}   = "restore done";
1197 $Lang{Reason_archive_done}   = "archive done";
1198 $Lang{Reason_nothing_to_do}  = "nothing to do";
1199 $Lang{Reason_backup_failed}  = "backup failed";
1200 $Lang{Reason_restore_failed} = "restore failed";
1201 $Lang{Reason_archive_failed} = "archive failed";
1202 $Lang{Reason_no_ping}        = "no ping";
1203 $Lang{Reason_backup_canceled_by_user}  = "backup canceled by user";
1204 $Lang{Reason_restore_canceled_by_user} = "restore canceled by user";
1205 $Lang{Reason_archive_canceled_by_user} = "archive canceled by user";
1206
1207 # ---------
1208 # Email messages
1209
1210 # No backup ever
1211 $Lang{EMailNoBackupEverSubj} = "BackupPC: no backups of \$host have succeeded";
1212 $Lang{EMailNoBackupEverMesg} = <<'EOF';
1213 To: $user$domain
1214 cc:
1215 Subject: $subj
1216
1217 Dear $userName,
1218
1219 Your PC ($host) has never been successfully backed up by our
1220 PC backup software.  PC backups should occur automatically
1221 when your PC is connected to the network.  You should contact
1222 computer support if:
1223
1224   - Your PC has been regularly connected to the network, meaning
1225     there is some configuration or setup problem preventing
1226     backups from occurring.
1227
1228   - You don't want your PC backed up and you want these email
1229     messages to stop.
1230
1231 Otherwise, please make sure your PC is connected to the network
1232 next time you are in the office.
1233
1234 Regards,
1235 BackupPC Genie
1236 http://backuppc.sourceforge.net
1237 EOF
1238
1239 # No recent backup
1240 $Lang{EMailNoBackupRecentSubj} = "BackupPC: no recent backups on \$host";
1241 $Lang{EMailNoBackupRecentMesg} = <<'EOF';
1242 To: $user$domain
1243 cc:
1244 Subject: $subj
1245
1246 Dear $userName,
1247
1248 Your PC ($host) has not been successfully backed up for $days days.
1249 Your PC has been correctly backed up $numBackups times from $firstTime to $days
1250 ago.  PC backups should occur automatically when your PC is connected
1251 to the network.
1252
1253 If your PC has been connected for more than a few hours to the
1254 network during the last $days days you should contact IS to find
1255 out why backups are not working.
1256
1257 Otherwise, if you are out of the office, there's not much you can
1258 do, other than manually copying especially critical files to other
1259 media.  You should be aware that any files you have created or
1260 changed in the last $days days (including all new email and
1261 attachments) cannot be restored if your PC disk crashes.
1262
1263 Regards,
1264 BackupPC Genie
1265 http://backuppc.sourceforge.net
1266 EOF
1267
1268 # Old Outlook files
1269 $Lang{EMailOutlookBackupSubj} = "BackupPC: Outlook files on \$host need to be backed up";
1270 $Lang{EMailOutlookBackupMesg} = <<'EOF';
1271 To: $user$domain
1272 cc:
1273 Subject: $subj
1274
1275 Dear $userName,
1276
1277 The Outlook files on your PC have $howLong.
1278 These files contain all your email, attachments, contact and calendar           
1279 information.  Your PC has been correctly backed up $numBackups times from
1280 $firstTime to $lastTime days ago.  However, Outlook locks all its files when
1281 it is running, preventing these files from being backed up.
1282
1283 It is recommended you backup the Outlook files when you are connected
1284 to the network by exiting Outlook and all other applications, and,
1285 using just your browser, go to this link:
1286
1287     $CgiURL?host=$host               
1288
1289 Select "Start Incr Backup" twice to start a new incremental backup.
1290 You can select "Return to $host page" and then hit "reload" to check
1291 the status of the backup.  It should take just a few minutes to
1292 complete.
1293
1294 Regards,
1295 BackupPC Genie
1296 http://backuppc.sourceforge.net
1297 EOF
1298
1299 $Lang{howLong_not_been_backed_up} = "not been backed up successfully";
1300 $Lang{howLong_not_been_backed_up_for_days_days} = "not been backed up for \$days days";
1301
1302 #end of lang_en.pm