1 <script type="text/javascript">
3 // error check the colors
4 function valid_color ( str ) {
5 var validColor = /^#[0-9a-fA-F]{3}$|^#[0-9a-fA-F]{6}$/;
7 return validColor.test ( str );
10 function valid_form ( form ) {
13 if ( form.admin_server_url.value == "" ) {
14 err += "<?php etranslate("Server URL is required")?>.\n";
15 form.admin_server_url.select ();
16 form.admin_server_url.focus ();
18 else if ( form.admin_server_url.value.charAt (
19 form.admin_server_url.value.length - 1 ) != '/' ) {
20 err += "<?php etranslate("Server URL must end with '/'")?>.\n";
21 form.admin_server_url.select ();
22 form.admin_server_url.focus ();
25 if ( parseInt ( form.admin_WORK_DAY_START_HOUR.value ) >=
26 parseInt ( form.admin_WORK_DAY_END_HOUR.value ) ) {
27 err += "<?php etranslate("Invalid work hours")?>.\n";
28 form.admin_WORK_DAY_START_HOUR.focus ();
32 alert ( "Error:\n\n" + err );
36 if ( ! valid_color ( form.admin_BGCOLOR.value ) ) {
37 err += "<?php etranslate("Invalid color for document background")?>.\n";
38 form.admin_BGCOLOR.select ();
39 form.admin_BGCOLOR.focus ();
41 else if ( ! valid_color ( form.admin_H2COLOR.value ) ) {
42 err += "<?php etranslate("Invalid color for document title")?>.\n";
43 form.admin_H2COLOR.select ();
44 form.admin_H2COLOR.focus ();
45 } else if ( ! valid_color ( form.admin_CELLBG.value ) ) {
46 err += "<?php etranslate("Invalid color for table cell background")?>.\n";
47 form.admin_CELLBG.select ();
48 form.admin_CELLBG.focus ();
49 } else if ( ! valid_color ( form.admin_TABLEBG.value ) ) {
50 err += "<?php etranslate("Invalid color for table grid")?>.\n";
51 form.admin_TABLEBG.select ();
52 form.admin_TABLEBG.focus ();
53 } else if ( ! valid_color ( form.admin_THBG.value ) ) {
54 err += "<?php etranslate("Invalid color for table header background")?>.\n";
55 form.admin_THBG.select ();
56 form.admin_THBG.focus ();
57 } else if ( ! valid_color ( form.admin_THFG.value ) ) {
58 err += "<?php etranslate("Invalid color for table text background")?>.\n";
59 form.admin_THFG.select ();
60 form.admin_THFG.focus ();
61 } else if ( ! valid_color ( form.admin_POPUP_BG.value ) ) {
62 err += "<?php etranslate("Invalid color for event popup background")?>.\n";
63 form.admin_POPUP_BG.select ();
64 form.admin_POPUP_BG.focus ();
65 } else if ( ! valid_color ( form.admin_POPUP_FG.value ) ) {
66 err += "<?php etranslate("Invalid color for event popup text")?>.\n";
67 form.admin_POPUP_FG.select ();
68 form.admin_POPUP_FG.focus ();
69 } else if ( ! valid_color ( form.admin_TODAYCELLBG.value ) ) {
70 err += "<?php etranslate("Invalid color for table cell background for today")?>.\n";
71 form.admin_TODAYCELLBG.select ();
72 form.admin_TODAYCELLBG.focus ();
75 if ( err.length > 0 ) {
76 alert ( "Error:\n\n" + err + "\n\n<?php etranslate("Color format should be '#RRGGBB'")?>" );
81 function selectColor ( color ) {
82 url = "colors.php?color=" + color;
83 var colorWindow = window.open(url,"ColorSelection","width=390,height=350,resizable=yes,scrollbars=yes");
86 // Updates the background-color of a table cell
88 // input - <input> element containing the new color value
89 // Note: this function relies on the following structure:
90 // <td><input onkeyup="updateColor(this);" /></td>
91 // <td>(this is the cell to be updated)</td>
92 function updateColor ( input ) {
93 // The cell to be updated
94 var colorCell = input.parentNode.nextSibling;
96 var color = input.value;
98 if (!valid_color ( color ) ) {
99 // Color specified is invalid; use black instead
100 colorCell.style.backgroundColor = "#000000";
102 colorCell.style.backgroundColor = color;
106 // Gets called on page load and when user changes setting for
107 // "Allow public access".
108 function public_handler () {
109 var enabled = document.prefform.admin_public_access[0].checked;
110 //alert ( "public enabled = " + enabled );
112 // Public Access enabled
113 makeVisible ( "pa1" );
114 makeVisible ( "pa2" );
115 makeVisible ( "pa3" );
116 makeVisible ( "pa4" );
117 makeVisible ( "pa5" );
118 makeVisible ( "pa6" );
120 // Public Access disabled
121 makeInvisible ( "pa1" );
122 makeInvisible ( "pa2" );
123 makeInvisible ( "pa3" );
124 makeInvisible ( "pa4" );
125 makeInvisible ( "pa5" );
126 makeInvisible ( "pa6" );
130 // Gets called on page load and when user changes setting for
131 // "Allow external users".
132 function eu_handler () {
133 var enabled = document.prefform.admin_allow_external_users[0].checked;
134 //alert ( "allow external = " + enabled );
136 // External Users enabled
137 makeVisible ( "eu1" );
138 makeVisible ( "eu2" );
139 // makeVisible ( "eu3" );
140 // makeVisible ( "eu4" );
142 makeInvisible ( "eu1" );
143 makeInvisible ( "eu2" );
144 // makeInvisible ( "eu3" );
145 // makeInvisible ( "eu4" );
149 // Gets called on page load and when user changes setting for
151 function email_handler () {
152 var enabled = document.prefform.admin_send_email[0].checked;
153 //alert ( "allow external = " + enabled );
156 makeVisible ( "em1" );
157 makeVisible ( "em2" );
158 makeVisible ( "em3" );
159 makeVisible ( "em4" );
160 makeVisible ( "em5" );
161 makeVisible ( "em6" );
162 makeVisible ( "em7" );
164 makeInvisible ( "em1" );
165 makeInvisible ( "em2" );
166 makeInvisible ( "em3" );
167 makeInvisible ( "em4" );
168 makeInvisible ( "em5" );
169 makeInvisible ( "em6" );
170 makeInvisible ( "em7" );
174 <?php //see the showTab function in includes/js.php for common code shared by all pages
175 //using the tabbed GUI.
176 ?>var tabs = new Array();
177 tabs[1] = "settings";