2 global $allow_color_customization;
4 <script type="text/javascript">
6 // error check the colors
7 function valid_color ( str ) {
8 var validColor = /^#[0-9a-fA-F]{3}$|^#[0-9a-fA-F]{6}$/;
10 return validColor.test ( str );
13 function valid_form ( form ) {
16 <?php if ( $allow_color_customization ) { ?>
17 if ( ! valid_color ( form.pref_BGCOLOR.value ) )
18 err += "<?php etranslate("Invalid color for document background")?>.\n";
19 if ( ! valid_color ( form.pref_H2COLOR.value ) )
20 err += "<?php etranslate("Invalid color for document title")?>.\n";
21 if ( ! valid_color ( form.pref_CELLBG.value ) )
22 err += "<?php etranslate("Invalid color for table cell background")?>.\n";
23 if ( ! valid_color ( form.pref_TODAYCELLBG.value ) )
24 err += "<?php etranslate("Invalid color for table cell background for today")?>.\n";
28 if ( ! validWorkHours ( form ) ) {
29 err += "<?php etranslate("Invalid work hours"); ?>.\n";
30 err += form.pref_WORK_DAY_START_HOUR.value + " > " + form.pref_WORK_DAY_END_HOUR.value + "\n";
33 alert ( "Error:\n\n" + err + "\n\n<?php etranslate("Color format should be '#RRGGBB'")?>" );
35 } else if ( err.length > 0 ) {
36 alert ( "Error:\n\n" + err );
42 function validWorkHours ( form ) {
43 return ( parseInt ( form.pref_WORK_DAY_START_HOUR.value ) <
44 parseInt ( form.pref_WORK_DAY_END_HOUR.value ) );
47 function selectColor ( color ) {
48 url = "colors.php?color=" + color;
49 var colorWindow = window.open(url,"ColorSelection","width=390,height=350,resizable=yes,scrollbars=yes");
52 // Updates the background-color of a table cell
54 // input - <input> element containing the new color value
55 // Note: this function relies on the following structure:
56 // <td><input onkeyup="updateColor(this);" /></td>
57 // <td>(this is the cell to be updated)</td>
58 function updateColor ( input ) {
59 // The cell to be updated
60 var colorCell = input.parentNode.nextSibling;
62 var color = input.value;
64 if (!valid_color ( color ) ) {
65 // Color specified is invalid; use black instead
66 colorCell.style.backgroundColor = "#000000";
68 colorCell.style.backgroundColor = color;