فهرست منبع

Theme: Add additional Settings to control the style of various elements, remove old css classes.
Default/Domain/User Settings: Add color previews in list view.

reliberate 9 سال پیش
والد
کامیت
a28560b76b

+ 1 - 30
core/default_settings/default_setting_edit.php

@@ -445,36 +445,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
 	elseif ($subcategory == 'password' || substr_count($subcategory, '_password') > 0 || $category == "login" && $subcategory == "password_reset_key" && $name == "text") {
 		echo "	<input class='formfld' type='password' id='default_setting_value' name='default_setting_value' onmouseover=\"this.type='text';\" onfocus=\"this.type='text';\" onmouseout=\"if (!$(this).is(':focus')) { this.type='password'; }\" onblur=\"this.type='password';\" maxlength='255' value=\"".$default_setting_value."\">\n";
 	}
-	elseif (
-		$category == "theme" && $subcategory == "body_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "body_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "background_color" && $name == "array" ||
-		$category == "theme" && $subcategory == "login_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "login_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_selector_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color_hover" && $name == "text"
-		) {
+	elseif ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
 		echo "	<input type='text' class='formfld colorpicker' id='default_setting_value' name='default_setting_value' value=\"".$default_setting_value."\">\n";
 	}
 	elseif ($category == "fax" && $subcategory == "page_size" && $name == "text" ) {

+ 8 - 0
core/default_settings/default_settings.php

@@ -417,6 +417,14 @@ else {
 				echo "		".str_repeat('*', strlen($row['default_setting_value']));
 			}
 			else {
+				if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
+					$border = (
+						substr_count(strtolower($row['default_setting_value']), '#fff') > 0 ||
+						substr_count(strtolower($row['default_setting_value']), '#ffffff') > 0 ||
+						substr_count(str_replace(' ','',strtolower($row['default_setting_value'])), '255,255,255,') > 0
+					) ? "border: 1px solid #ccc; padding: -1px;" : null;
+					echo "		<img src='data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' style='background: ".$row['default_setting_value']."; width: 15px; height: 15px; margin-right: 4px; vertical-align: middle; ".$border."'>";
+				}
 				echo "		".htmlspecialchars($row['default_setting_value']);
 			}
 			echo "		&nbsp;\n";

+ 1 - 30
core/domain_settings/domain_setting_edit.php

@@ -542,36 +542,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
 	elseif ($subcategory == 'password' || substr_count($subcategory, '_password') > 0 || $category == "login" && $subcategory == "password_reset_key" && $name == "text") {
 		echo "	<input class='formfld' type='password' id='domain_setting_value' name='domain_setting_value' maxlength='255' onmouseover=\"this.type='text';\" onfocus=\"this.type='text';\" onmouseout=\"if (!$(this).is(':focus')) { this.type='password'; }\" onblur=\"this.type='password';\" value=\"".$row['domain_setting_value']."\">\n";
 	}
-	elseif (
-		$category == "theme" && $subcategory == "body_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "body_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "background_color" && $name == "array" ||
-		$category == "theme" && $subcategory == "login_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "login_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_selector_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color_hover" && $name == "text"
-		) {
+	elseif ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
 		echo "	<input type='text' class='formfld colorpicker' id='domain_setting_value' name='domain_setting_value' value=\"".$row['domain_setting_value']."\">\n";
 	}
 	elseif ($category == "fax" && $subcategory == "page_size" && $name == "text" ) {

+ 9 - 1
core/domain_settings/domain_settings.php

@@ -240,12 +240,20 @@ if (sizeof($_REQUEST) > 1) {
 				( $category == "theme" && $subcategory == "menu_position" && $name == "text" ) ||
 				( $category == "theme" && $subcategory == "logo_align" && $name == "text" )
 				) {
-				echo "		".$text['label-'.$row['default_setting_value']];
+				echo "		".$text['label-'.$row['domain_setting_value']];
 			}
 			else if ($subcategory == 'password' || substr_count($subcategory, '_password') > 0 || $category == "login" && $subcategory == "password_reset_key" && $name == "text") {
 				echo "		".str_repeat('*', strlen($row['domain_setting_value']));
 			}
 			else {
+				if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
+					$border = (
+						substr_count(strtolower($row['domain_setting_value']), '#fff') > 0 ||
+						substr_count(strtolower($row['domain_setting_value']), '#ffffff') > 0 ||
+						substr_count(str_replace(' ','',strtolower($row['domain_setting_value'])), '255,255,255,') > 0
+					) ? "border: 1px solid #ccc; padding: -1px;" : null;
+					echo "		<img src='data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' style='background: ".$row['domain_setting_value']."; width: 15px; height: 15px; margin-right: 4px; vertical-align: middle; ".$border."'>";
+				}
 				echo "		".htmlspecialchars($row['domain_setting_value']);
 			}
 			echo "		&nbsp;\n";

+ 1 - 30
core/users/user_setting_edit.php

@@ -544,36 +544,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
 	elseif ($subcategory == 'password' || substr_count($subcategory, '_password') > 0 || $category == "login" && $subcategory == "password_reset_key" && $name == "text") {
 		echo "	<input class='formfld' type='password' id='user_setting_value' name='user_setting_value' maxlength='255' onmouseover=\"this.type='text';\" onfocus=\"this.type='text';\" onmouseout=\"if (!$(this).is(':focus')) { this.type='password'; }\" onblur=\"this.type='password';\" value=\"".$row['user_setting_value']."\">\n";
 	}
-	elseif (
-		$category == "theme" && $subcategory == "body_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "body_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "background_color" && $name == "array" ||
-		$category == "theme" && $subcategory == "login_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "login_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "domain_selector_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "footer_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_default_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_negative_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "message_alert_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_main_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_background_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_text_color_hover" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_sub_shadow_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color" && $name == "text" ||
-		$category == "theme" && $subcategory == "menu_brand_text_color_hover" && $name == "text"
-		) {
+	elseif ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
 		echo "	<input type='text' class='formfld colorpicker' id='user_setting_value' name='user_setting_value' value=\"".$row['user_setting_value']."\">\n";
 	}
 	elseif ($category == "fax" && $subcategory == "page_size" && $name == "text" ) {

+ 9 - 1
core/users/user_settings.php

@@ -211,12 +211,20 @@ else {
 				( $category == "theme" && $subcategory == "menu_position" && $name == "text" ) ||
 				( $category == "theme" && $subcategory == "logo_align" && $name == "text" )
 				) {
-				echo "		".$text['label-'.$row['default_setting_value']];
+				echo "		".$text['label-'.$row['user_setting_value']];
 			}
 			else if ($subcategory == 'password' || substr_count($subcategory, '_password') > 0 || $category == "login" && $subcategory == "password_reset_key" && $name == "text") {
 				echo "		".str_repeat('*', strlen($row['user_setting_value']));
 			}
 			else {
+				if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
+					$border = (
+						substr_count(strtolower($row['user_setting_value']), '#fff') > 0 ||
+						substr_count(strtolower($row['user_setting_value']), '#ffffff') > 0 ||
+						substr_count(str_replace(' ','',strtolower($row['user_setting_value'])), '255,255,255,') > 0
+					) ? "border: 1px solid #ccc; padding: -1px;" : null;
+					echo "		<img src='data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' style='background: ".$row['user_setting_value']."; width: 15px; height: 15px; margin-right: 4px; vertical-align: middle; ".$border."'>";
+				}
 				echo "		".htmlspecialchars($row['user_setting_value']);
 			}
 			echo "		&nbsp;\n";

+ 141 - 0
themes/default/app_defaults.php

@@ -302,6 +302,147 @@ if ($domains_processed == 1) {
 		$array[$x]['default_setting_value'] = '#69e5ff';
 		$array[$x]['default_setting_enabled'] = 'false';
 		$array[$x]['default_setting_description'] = 'Set the hover text color (and opacity) of sub menu items.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'heading_text_font';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = 'arial';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the font of the page heading text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'heading_text_size';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '15px';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the size of the page heading text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'heading_text_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#952424';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the color (and opacity) of the page heading text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'body_text_font';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = 'arial';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the font of body text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'body_text_size';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '12px';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the size of the body text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'body_text_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#5f5f5f';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the color (and opacity) of the body text.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'text_link_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#004083';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the link color (and opacity) of text links outside tables.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'text_link_color_hover';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#5082ca';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the hover color (and opacity) of text links outside tables.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_heading_text_font';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = 'arial';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text font of table header rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_heading_text_size';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '12px';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text size of table header rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_heading_text_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#3164ad';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text color (and opacity) of table header rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_heading_background_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = 'none';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the background color (and opacity) of table header rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_heading_border_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#a4aebf';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the bottom border color (and opacity) of table header rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_text_font';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = 'arial';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text font of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_text_size';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '12px';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text size of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_text_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#000';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the text color (and opacity) of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_background_color_dark';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#e5e9f0';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the darker background color (and opacity) of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_background_color_medium';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#f0f2f6';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the medium background color (and opacity) of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_background_color_light';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#fff';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the lighter background color (and opacity) of table data rows.';
+		$x++;
+		$array[$x]['default_setting_category'] = 'theme';
+		$array[$x]['default_setting_subcategory'] = 'table_row_border_color';
+		$array[$x]['default_setting_name'] = 'text';
+		$array[$x]['default_setting_value'] = '#c5d1e5';
+		$array[$x]['default_setting_enabled'] = 'false';
+		$array[$x]['default_setting_description'] = 'Set the bottom border (dividing line) color (and opacity) of table data rows.';
+
 
 	//get an array of the default settings
 		$sql = "select * from v_default_settings ";

+ 7 - 7
themes/default/config.php

@@ -1,12 +1,12 @@
 <?php
 
 //define the link labels
-	$v_link_label_edit = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-pencil'></span></button>";
-	$v_link_label_add = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-plus'></span></button>";
-	$v_link_label_delete = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-remove'></span></button>";
-	$v_link_label_view = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-eye-open'></span></button>";
-	$v_link_label_play = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-play'></span></button>";
-	$v_link_label_pause = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-pause'></span></button>";
-	$v_link_label_download = "<button type='button' class='btn btn-default control_icon'><span class='glyphicon glyphicon-cloud-download'></span></button>";
+	$v_link_label_edit = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-pencil'></span></button>";
+	$v_link_label_add = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-plus'></span></button>";
+	$v_link_label_delete = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-remove'></span></button>";
+	$v_link_label_view = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-eye-open'></span></button>";
+	$v_link_label_play = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-play'></span></button>";
+	$v_link_label_pause = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-pause'></span></button>";
+	$v_link_label_download = "<button type='button' class='btn btn-default list_control_icon'><span class='glyphicon glyphicon-cloud-download'></span></button>";
 
 ?>

+ 97 - 207
themes/default/template.php

@@ -408,7 +408,8 @@
 		}
 
 	/* control icons */
-	button.control_icon {
+	button.list_control_icon,
+	button.list_control_icon_disabled {
 		font-family: Candara, Calibri, Segoe, "Segoe UI", Optima, Arial, sans-serif;
 		padding: 2px;
 		color: #fff;
@@ -431,7 +432,7 @@
 		-moz-opacity: 0.3;
 		}
 
-	button.control_icon:hover, button.control_icon:active, button.control_icon:focus {
+	button.list_control_icon:hover, button.list_control_icon:active, button.list_control_icon:focus {
 		cursor: pointer;
 		color: #fff;
 		border: 1px solid #26242a;
@@ -570,93 +571,32 @@
 		border: none;
 		}
 
-	a {
-		color: #004083;
-		width: 100%;
-		}
-
-	a:hover {
-		color: #5082ca;
-		}
-
-	.title {
-		color: #952424;
-		font-size: 15px;
-		font-family: arial;
+	.title, b {
+		color: <?php echo ($_SESSION['theme']['heading_text_color']['text'] != '') ? $_SESSION['theme']['heading_text_color']['text'] : '#952424'; ?>;
+		font-size: <?php echo ($_SESSION['theme']['heading_text_size']['text'] != '') ? $_SESSION['theme']['heading_text_size']['text'] : '15px'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['heading_text_font']['text'] != '') ? $_SESSION['theme']['heading_text_font']['text'] : 'arial'; ?>;
 		font-weight: bold
 		}
 
-	b {
-		color: #952424;
-		font-size: 15px;
-		font-family: arial;
-		}
-
-	th {
-		border-bottom: 1px solid #a4aebf;
-		text-align: left;
-		color: #3164AD;
-		font-size: 12px;
-		font-family: arial;
-		padding-top: 4px;
-		padding-bottom: 4px;
-		padding-right: 7px;
-		padding-left: 0;
-		}
-
-	th a:link{ color:#3164AD; text-decoration: none; }
-	th a:visited{ color:#3164AD; }
-	th a:hover{ color:#5082ca; text-decoration: underline; }
-	th a:active{ color:#3164AD; }
-
-	td {
-		color: #5f5f5f;
-		font-size: 12px;
-		font-family: arial;
-		}
-
-	td.list_control_icons {
-		/* multiple icons exist (horizontally) */
-		width: 52px;
-		padding: none;
-		padding-left: 2px;
-		text-align: right;
-		vertical-align: top;
-		white-space: nowrap;
-		}
-
-	td.list_control_icon {
-		/* a single icon exists */
-		width: 26px;
-		padding: none;
-		padding-left: 2px;
-		text-align: right;
-		vertical-align: top;
-		white-space: nowrap;
-		}
-
-	img.list_control_icon {
-		margin: 2px;
-		width: 21px;
-		height: 21px;
-		border: none;
-		opacity: 0.4;
-		-moz-opacity: 0.4;
+	a {
+		color: <?php echo ($_SESSION['theme']['text_link_color']['text'] != '') ? $_SESSION['theme']['text_link_color']['text'] : '#004083'; ?>;
+		width: 100%;
 		}
 
-	img.list_control_icon_disabled {
-		margin: 2px;
-		width: 21px;
-		height: 21px;
-		border: none;
-		opacity: 0.4;
-		-moz-opacity: 0.4;
+	a:hover {
+		color: <?php echo ($_SESSION['theme']['text_link_color_hover']['text'] != '') ? $_SESSION['theme']['text_link_color_hover']['text'] : '#5082ca'; ?>;
 		}
 
 	form {
 		margin: 0;
 		}
 
+	.frm {
+		border: solid 1px #ccc;
+		color: #666;
+		background-color: #EFEFEF;
+		}
+
 	input.btn, input.button {
 		font-family: Candara, Calibri, Segoe, "Segoe UI", Optima, Arial, sans-serif;
 		padding: 3px 8px 4px 8px;
@@ -765,8 +705,68 @@
 		vertical-align: middle;
 		}
 
+	span.playback_progress_bar {
+		background-color: #c43e42;
+		height: 1px;
+		display: block;
+		}
+
 /* TABLES *****************************************************************/
 
+	th {
+		border-bottom: 1px solid <?php echo ($_SESSION['theme']['table_heading_border_color']['text'] != '') ? $_SESSION['theme']['table_heading_border_color']['text'] : '#a4aebf'; ?>;
+		text-align: left;
+		color: <?php echo ($_SESSION['theme']['table_heading_text_color']['text'] != '') ? $_SESSION['theme']['table_heading_text_color']['text'] : '#3164ad'; ?>;
+		background: <?php echo ($_SESSION['theme']['table_heading_background_color']['text'] != '') ? $_SESSION['theme']['table_heading_background_color']['text'] : 'none'; ?>;
+		font-size: <?php echo ($_SESSION['theme']['table_heading_text_size']['text'] != '') ? $_SESSION['theme']['table_heading_text_size']['text'] : '12px'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['table_heading_text_font']['text'] != '') ? $_SESSION['theme']['table_heading_text_font']['text'] : 'arial'; ?>;
+		padding: 4px 7px 4px 0;
+		padding: 4px 7px;
+		}
+
+	th a, th a:visited, th a:active {
+		color: <?php echo ($_SESSION['theme']['table_heading_text_color']['text'] != '') ? $_SESSION['theme']['table_heading_text_color']['text'] : '#3164ad'; ?>;
+		text-decoration: none;
+		}
+
+	th a:hover {
+		color: <?php echo ($_SESSION['theme']['table_heading_text_color']['text'] != '') ? $_SESSION['theme']['table_heading_text_color']['text'] : '#3164ad'; ?>;
+		text-decoration: underline;
+		}
+
+	td {
+		color: <?php echo ($_SESSION['theme']['body_text_color']['text'] != '') ? $_SESSION['theme']['body_text_color']['text'] : '#5f5f5f'; ?>;
+		font-size: <?php echo ($_SESSION['theme']['body_text_size']['text'] != '') ? $_SESSION['theme']['body_text_size']['text'] : '12px'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['body_text_font']['text'] != '') ? $_SESSION['theme']['body_text_font']['text'] : 'arial'; ?>;
+		}
+
+	table.tr_hover tr {
+		cursor: default;
+		}
+
+	table.tr_hover tr:hover td,
+	table.tr_hover tr:hover td a {
+		color: <?php echo ($_SESSION['theme']['text_link_color_hover']['text'] != '') ? $_SESSION['theme']['text_link_color_hover']['text'] : '#5082ca'; ?>;
+		}
+
+	td.list_control_icons {
+		width: 52px;
+		padding: none;
+		padding-left: 2px;
+		text-align: right;
+		vertical-align: top;
+		white-space: nowrap;
+		}
+
+	td.list_control_icon {
+		width: 26px;
+		padding: none;
+		padding-left: 2px;
+		text-align: right;
+		vertical-align: top;
+		white-space: nowrap;
+		}
+
 	.vncell {
 		border-bottom: 1px solid #fff;
 		background-color: #e5e9f0;
@@ -835,143 +835,41 @@
 		height: 33px;
 		}
 
-	.listbg {
-		border-bottom: 1px solid #a4aebf;
-		font-size: 11px;
-		background-color: #990000;
-		color: #000;
-		padding: 4px 16px 4px 6px;
-		}
-
-	table.tr_hover tr {
-		background-color: transparent;
-		cursor: default;
-		}
-
-	table.tr_hover tr:hover td,
-	table.tr_hover tr:hover td a {
-		color: #5082ca;
-		}
-
 	.row_style0 {
-		border-bottom: 1px solid #c5d1e5;
-		background-color: #e5e9f0;
-		color: #000;
+		border-bottom: 1px solid <?php echo ($_SESSION['theme']['table_row_border_color']['text'] != '') ? $_SESSION['theme']['table_row_border_color']['text'] : '#c5d1e5'; ?>;
+		background: <?php echo ($_SESSION['theme']['table_row_background_color_dark']['text'] != '') ? $_SESSION['theme']['table_row_background_color_dark']['text'] : '#e5e9f0'; ?>;
+		color: <?php echo ($_SESSION['theme']['table_row_text_color']['text'] != '') ? $_SESSION['theme']['table_row_text_color']['text'] : '#000'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['table_row_text_font']['text'] != '') ? $_SESSION['theme']['table_row_text_font']['text'] : 'arial'; ?>
+		font-size: <?php echo ($_SESSION['theme']['table_row_text_size']['text'] != '') ? $_SESSION['theme']['table_row_text_size']['text'] : '12px'; ?>
 		text-align: left;
 		padding: 4px 7px;
 		}
 
 	.row_style1 {
-		border-bottom: 1px solid #c5d1e5;
-		background-color: #fff;
-		color: #000;
+		border-bottom: 1px solid <?php echo ($_SESSION['theme']['table_row_border_color']['text'] != '') ? $_SESSION['theme']['table_row_border_color']['text'] : '#c5d1e5'; ?>;
+		background: <?php echo ($_SESSION['theme']['table_row_background_color_light']['text'] != '') ? $_SESSION['theme']['table_row_background_color_light']['text'] : '#fff'; ?>;
+		color: <?php echo ($_SESSION['theme']['table_row_text_color']['text'] != '') ? $_SESSION['theme']['table_row_text_color']['text'] : '#000'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['table_row_text_font']['text'] != '') ? $_SESSION['theme']['table_row_text_font']['text'] : 'arial'; ?>
+		font-size: <?php echo ($_SESSION['theme']['table_row_text_size']['text'] != '') ? $_SESSION['theme']['table_row_text_size']['text'] : '12px'; ?>
 		text-align: left;
 		padding: 4px 7px;
 		}
 
-	.row_style2 {
-		border-bottom: 1px solid #c5d1e5;
-		background-color: #fff;
-		color: #000;
-		text-align: center;
-		padding: 0 1px 0 1px;
-		width: 51px;
+	.row_style_slim {
+		padding: 0;
 		white-space: nowrap;
 		}
 
-	.row_style_hor_mir_grad {
-		background: -moz-linear-gradient(left, #e5e9f0 0%, #fff 25%, #fff 75%, #e5e9f0 100%);
-		background: -webkit-gradient(linear, left top, right top, color-stop(0%,#e5e9f0), color-stop(25%,#fff), color-stop(75%,#fff), color-stop(100%,#e5e9f0));
-		background: -webkit-linear-gradient(left, #e5e9f0 0%,#fff 25%,#fff 75%,#e5e9f0 100%);
-		background: -o-linear-gradient(left, #e5e9f0 0%,#fff 25%,#fff 75%,#e5e9f0 100%);
-		background: -ms-linear-gradient(left, #e5e9f0 0%,#fff 25%,#fff 75%,#e5e9f0 100%);
-		background: linear-gradient(to right, #e5e9f0 0%,#fff 25%,#fff 75%,#e5e9f0 100%);
-		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e9f0', endColorstr='#e5e9f0',GradientType=1 );
-		}
-
 	.row_stylebg {
-		border-bottom: 1px solid #b9c5d8;
-		background-color: #f0f2f6;
-		color: #000;
+		border-bottom: 1px solid <?php echo ($_SESSION['theme']['table_row_border_color']['text'] != '') ? $_SESSION['theme']['table_row_border_color']['text'] : '#c5d1e5'; ?>; /* #b9c5d8 */
+		background: <?php echo ($_SESSION['theme']['table_row_background_color_medium']['text'] != '') ? $_SESSION['theme']['table_row_background_color_medium']['text'] : '#f0f2f6'; ?>;
+		color: <?php echo ($_SESSION['theme']['table_row_text_color']['text'] != '') ? $_SESSION['theme']['table_row_text_color']['text'] : '#000'; ?>;
+		font-family: <?php echo ($_SESSION['theme']['table_row_text_font']['text'] != '') ? $_SESSION['theme']['table_row_text_font']['text'] : 'arial'; ?>
+		font-size: <?php echo ($_SESSION['theme']['table_row_text_size']['text'] != '') ? $_SESSION['theme']['table_row_text_size']['text'] : '12px'; ?>
 		text-align: left;
 		padding: 4px 7px;
 		}
 
-	table th {
-		padding:4px 7px
-		}
-
-	table tr.even td {
-		background:#eee;
-		background-image: url('<!--{project_path}-->/themes/default/images/background_cell.gif');
-		border-bottom: 1px solid #a4aebf;
-		color: #333333;
-		}
-
-	table tr.odd td {
-		border-bottom: 1px solid #a4aebf;
-		color: #000000;
-		}
-
-	table tr:first-child th:first-child {
-		-moz-border-radius-topleft:7px;
-		-webkit-border-top-left-radius:7px;
-		border-top-left-radius:7px;
-		}
-
-	table tr:first-child th:last-of-type {
-		-moz-border-radius-topright:7px;
-		-webkit-border-top-right-radius:7px;
-		border-top-right-radius:7px;
-		}
-
-	table tr:nth-last-child(-5) td:first-of-type {
-		-moz-border-radius-bottomleft:7px;
-		-webkit-border-bottom-left-radius:7px;
-		border-bottom-left-radius:7px;
-		}
-
-	table tr:nth-last-child(-5) td:first-of-type {
-		-moz-border-radius-topleft:7px;
-		-webkit-border-top-left-radius:7px;
-		border-bottom-top-radius:7px;
-		}
-
-	.border {
-		border: solid 1px #a4aebf;
-		}
-
-	.frm {
-		border: solid 1px #ccc;
-		color: #666;
-		background-color: #EFEFEF;
-		}
-
-	.smalltext {
-		color: #bbb;
-		font-size: 11px;
-		font-family: arial;
-		}
-
-	fieldset {
-		padding: 8px;
-		text-align: left;
-		border: 1px solid #aeb7c6;
-		border-radius: 3px;
-		-moz-border-radius: 3px;
-		-webkit-border-radius: 3px;
-		margin: 0;
-		}
-
-	legend {
-		font-size: 13px;
-		font-family: arial;
-		font-weight: bold;
-		color: #3164ad;
-		padding-bottom: 8px;
-		padding-right: 2px;
-		}
-
 /* RESPONSE MESSAGES *******************************************************/
 
 	#message_container {
@@ -1029,7 +927,7 @@
 		color: <?php echo $_SESSION['theme']['message_alert_color']['text']; ?>;
 		}
 
-/* OPERATOR PANEL: BEGIN ********************************************************/
+/* OPERATOR PANEL ****************************************************************/
 
 	div.op_ext {
 		float: left;
@@ -1176,15 +1074,7 @@
 		border: 1px solid #5d5f5a;
 		}
 
-/* OPERATOR PANEL: END *******************************************************/
-
-	span.playback_progress_bar {
-		background-color: #c43e42;
-		height: 1px;
-		display: block;
-		}
-
-/* USER DASHBOARD: BEGIN *****************************************************/
+/* USER DASHBOARD ****************************************************************/
 
 	/* login message */
 	div.login_message {