Explorar o código

Update - Languages v3.1 (#57)

display percentages as a scaled colour graph from green to red
display overall completion
put app_languages.php though sort
Mafoo %!s(int64=8) %!d(string=hai) anos
pai
achega
e1442c582f
Modificáronse 4 ficheiros con 137 adicións e 85 borrados
  1. 1 1
      languages/app_config.php
  2. 81 61
      languages/app_languages.php
  3. 25 20
      languages/app_menu.php
  4. 30 3
      languages/index.php

+ 1 - 1
languages/app_config.php

@@ -5,7 +5,7 @@
 		$apps[$x]['uuid'] = "23ecb350-b423-428d-9a8d-d617d27b30fe";
 		$apps[$x]['category'] = "System";
 		$apps[$x]['subcategory'] = "";
-		$apps[$x]['version'] = "3";
+		$apps[$x]['version'] = "3.1";
 		$apps[$x]['license'] = "Mozilla Public License 1.1";
 		$apps[$x]['url'] = "http://www.fusionpbx.com";
 		$apps[$x]['description']['en-us'] = "A tool to analyze languages used in the GUI following https://msdn.microsoft.com/en-gb/library/ee825488%28v=cs.20%29.aspx";

+ 81 - 61
languages/app_languages.php

@@ -1,5 +1,5 @@
 <?php
-#This file was last reorganized on 2nd of June 2017 04:38:28 PM UTC
+#This file was last reorganized on 4th of June 2017 08:31:43 AM UTC
 
 $text['description-compare_languages']['en-us'] = "Compare languages between different cultures";
 $text['description-compare_languages']['ar-eg'] = "";
@@ -121,66 +121,6 @@ $text['header-language_results']['ru-ru'] = "";
 $text['header-language_results']['sv-se'] = "";
 $text['header-language_results']['uk-ua'] = "";
 
-$text['label-app_target']['en-us'] = "Application";
-$text['label-app_target']['ar-eg'] = "";
-$text['label-app_target']['de-at'] = "";
-$text['label-app_target']['de-ch'] = "";
-$text['label-app_target']['de-de'] = "";
-$text['label-app_target']['es-cl'] = "";
-$text['label-app_target']['es-mx'] = "";
-$text['label-app_target']['fr-ca'] = "";
-$text['label-app_target']['fr-fr'] = "";
-$text['label-app_target']['he-il'] = "";
-$text['label-app_target']['it-it'] = "";
-$text['label-app_target']['nl-nl'] = "";
-$text['label-app_target']['pl-pl'] = "";
-$text['label-app_target']['pt-br'] = "";
-$text['label-app_target']['pt-pt'] = "";
-$text['label-app_target']['ro-ro'] = "";
-$text['label-app_target']['ru-ru'] = "";
-$text['label-app_target']['sv-se'] = "";
-$text['label-app_target']['uk-ua'] = "";
-
-$text['label-translations']['en-us'] = "Translations";
-$text['label-translations']['ar-eg'] = "";
-$text['label-translations']['de-at'] = "";
-$text['label-translations']['de-ch'] = "";
-$text['label-translations']['de-de'] = "";
-$text['label-translations']['es-cl'] = "";
-$text['label-translations']['es-mx'] = "";
-$text['label-translations']['fr-ca'] = "";
-$text['label-translations']['fr-fr'] = "";
-$text['label-translations']['he-il'] = "";
-$text['label-translations']['it-it'] = "";
-$text['label-translations']['nl-nl'] = "";
-$text['label-translations']['pl-pl'] = "";
-$text['label-translations']['pt-br'] = "";
-$text['label-translations']['pt-pt'] = "";
-$text['label-translations']['ro-ro'] = "";
-$text['label-translations']['ru-ru'] = "";
-$text['label-translations']['sv-se'] = "";
-$text['label-translations']['uk-ua'] = "";
-
-$text['label-menu_items']['en-us'] = "Menu Items";
-$text['label-menu_items']['ar-eg'] = "";
-$text['label-menu_items']['de-at'] = "";
-$text['label-menu_items']['de-ch'] = "";
-$text['label-menu_items']['de-de'] = "";
-$text['label-menu_items']['es-cl'] = "";
-$text['label-menu_items']['es-mx'] = "";
-$text['label-menu_items']['fr-ca'] = "";
-$text['label-menu_items']['fr-fr'] = "";
-$text['label-menu_items']['he-il'] = "";
-$text['label-menu_items']['it-it'] = "";
-$text['label-menu_items']['nl-nl'] = "";
-$text['label-menu_items']['pl-pl'] = "";
-$text['label-menu_items']['pt-br'] = "";
-$text['label-menu_items']['pt-pt'] = "";
-$text['label-menu_items']['ro-ro'] = "";
-$text['label-menu_items']['ru-ru'] = "";
-$text['label-menu_items']['sv-se'] = "";
-$text['label-menu_items']['uk-ua'] = "";
-
 $text['label-app_descriptions']['en-us'] = "App Descriptions";
 $text['label-app_descriptions']['ar-eg'] = "";
 $text['label-app_descriptions']['de-at'] = "";
@@ -201,6 +141,26 @@ $text['label-app_descriptions']['ru-ru'] = "";
 $text['label-app_descriptions']['sv-se'] = "";
 $text['label-app_descriptions']['uk-ua'] = "";
 
+$text['label-app_target']['en-us'] = "Application";
+$text['label-app_target']['ar-eg'] = "";
+$text['label-app_target']['de-at'] = "";
+$text['label-app_target']['de-ch'] = "";
+$text['label-app_target']['de-de'] = "";
+$text['label-app_target']['es-cl'] = "";
+$text['label-app_target']['es-mx'] = "";
+$text['label-app_target']['fr-ca'] = "";
+$text['label-app_target']['fr-fr'] = "";
+$text['label-app_target']['he-il'] = "";
+$text['label-app_target']['it-it'] = "";
+$text['label-app_target']['nl-nl'] = "";
+$text['label-app_target']['pl-pl'] = "";
+$text['label-app_target']['pt-br'] = "";
+$text['label-app_target']['pt-pt'] = "";
+$text['label-app_target']['ro-ro'] = "";
+$text['label-app_target']['ru-ru'] = "";
+$text['label-app_target']['sv-se'] = "";
+$text['label-app_target']['uk-ua'] = "";
+
 $text['label-culture_code']['en-us'] = "Culture Code";
 $text['label-culture_code']['ar-eg'] = "";
 $text['label-culture_code']['de-at'] = "";
@@ -241,6 +201,46 @@ $text['label-flag']['ru-ru'] = "";
 $text['label-flag']['sv-se'] = "";
 $text['label-flag']['uk-ua'] = "";
 
+$text['label-menu_items']['en-us'] = "Menu Items";
+$text['label-menu_items']['ar-eg'] = "";
+$text['label-menu_items']['de-at'] = "";
+$text['label-menu_items']['de-ch'] = "";
+$text['label-menu_items']['de-de'] = "";
+$text['label-menu_items']['es-cl'] = "";
+$text['label-menu_items']['es-mx'] = "";
+$text['label-menu_items']['fr-ca'] = "";
+$text['label-menu_items']['fr-fr'] = "";
+$text['label-menu_items']['he-il'] = "";
+$text['label-menu_items']['it-it'] = "";
+$text['label-menu_items']['nl-nl'] = "";
+$text['label-menu_items']['pl-pl'] = "";
+$text['label-menu_items']['pt-br'] = "";
+$text['label-menu_items']['pt-pt'] = "";
+$text['label-menu_items']['ro-ro'] = "";
+$text['label-menu_items']['ru-ru'] = "";
+$text['label-menu_items']['sv-se'] = "";
+$text['label-menu_items']['uk-ua'] = "";
+
+$text['label-overall']['en-us'] = "Overall";
+$text['label-overall']['ar-eg'] = "";
+$text['label-overall']['de-at'] = "";
+$text['label-overall']['de-ch'] = "";
+$text['label-overall']['de-de'] = "";
+$text['label-overall']['es-cl'] = "";
+$text['label-overall']['es-mx'] = "";
+$text['label-overall']['fr-ca'] = "";
+$text['label-overall']['fr-fr'] = "";
+$text['label-overall']['he-il'] = "";
+$text['label-overall']['it-it'] = "";
+$text['label-overall']['nl-nl'] = "";
+$text['label-overall']['pl-pl'] = "";
+$text['label-overall']['pt-br'] = "";
+$text['label-overall']['pt-pt'] = "";
+$text['label-overall']['ro-ro'] = "";
+$text['label-overall']['ru-ru'] = "";
+$text['label-overall']['sv-se'] = "";
+$text['label-overall']['uk-ua'] = "";
+
 $text['label-reference_language']['en-us'] = "Reference Language";
 $text['label-reference_language']['ar-eg'] = "";
 $text['label-reference_language']['de-at'] = "";
@@ -301,6 +301,26 @@ $text['label-target_language']['ru-ru'] = "";
 $text['label-target_language']['sv-se'] = "";
 $text['label-target_language']['uk-ua'] = "";
 
+$text['label-translations']['en-us'] = "Translations";
+$text['label-translations']['ar-eg'] = "";
+$text['label-translations']['de-at'] = "";
+$text['label-translations']['de-ch'] = "";
+$text['label-translations']['de-de'] = "";
+$text['label-translations']['es-cl'] = "";
+$text['label-translations']['es-mx'] = "";
+$text['label-translations']['fr-ca'] = "";
+$text['label-translations']['fr-fr'] = "";
+$text['label-translations']['he-il'] = "";
+$text['label-translations']['it-it'] = "";
+$text['label-translations']['nl-nl'] = "";
+$text['label-translations']['pl-pl'] = "";
+$text['label-translations']['pt-br'] = "";
+$text['label-translations']['pt-pt'] = "";
+$text['label-translations']['ro-ro'] = "";
+$text['label-translations']['ru-ru'] = "";
+$text['label-translations']['sv-se'] = "";
+$text['label-translations']['uk-ua'] = "";
+
 $text['title-compare_languages']['en-us'] = "Compare Languages";
 $text['title-compare_languages']['ar-eg'] = "";
 $text['title-compare_languages']['de-at'] = "";

+ 25 - 20
languages/app_menu.php

@@ -1,24 +1,29 @@
 <?php
 
-$apps[$x]['menu'][0]['title']['en-us'] = "Languages";
-$apps[$x]['menu'][0]['title']['ar-eg'] = "Sprachen"; //Google translate
-$apps[$x]['menu'][0]['title']['de-at'] = "Sprachen"; //Google translate
-$apps[$x]['menu'][0]['title']['de-de'] = "Sprachen"; //Google translate
-$apps[$x]['menu'][0]['title']['es-cl'] = "Idiomas"; //Google translate
-$apps[$x]['menu'][0]['title']['fr-fr'] = "Les langues"; //Google translate
-$apps[$x]['menu'][0]['title']['he-il'] = "שפות"; //Google translate
-$apps[$x]['menu'][0]['title']['nl-nl'] = "Talen"; //Google translate
-$apps[$x]['menu'][0]['title']['pl-pl'] = "Języki"; //Google translate
-$apps[$x]['menu'][0]['title']['pt-br'] = "línguas"; //Google translate
-$apps[$x]['menu'][0]['title']['pt-pt'] = "línguas"; //Google translate
-$apps[$x]['menu'][0]['title']['ru-ru'] = "Языки"; //Google translate
-$apps[$x]['menu'][0]['title']['sv-se'] = "språk"; //Google translate
-$apps[$x]['menu'][0]['title']['uk-ua'] = "мови"; //Google translate
-
-$apps[$x]['menu'][0]['uuid'] = "13a8fd28-6718-4ac1-8acc-0bcffbce29c3";
-$apps[$x]['menu'][0]['parent_uuid'] = "0438b504-8613-7887-c420-c837ffb20cb1";
-$apps[$x]['menu'][0]['category'] = "internal";
-$apps[$x]['menu'][0]['path'] = "/app/languages/index.php";
-$apps[$x]['menu'][0]['groups'][] = "superadmin";
+	$y=0;
+	$apps[$x]['menu'][$y]['title']['en-us'] = "Languages";
+	$apps[$x]['menu'][$y]['title']['ar-eg'] = "اللغات"; //Google translate
+	$apps[$x]['menu'][$y]['title']['de-at'] = "Sprachen"; //Google translate
+	$apps[$x]['menu'][$y]['title']['de-ch'] = "Sprachen"; //Google translate
+	$apps[$x]['menu'][$y]['title']['de-de'] = "Sprachen"; //Google translate
+	$apps[$x]['menu'][$y]['title']['es-cl'] = "Idiomas"; //Google translate
+	$apps[$x]['menu'][$y]['title']['es-mx'] = "Idiomas"; //Google translate
+	$apps[$x]['menu'][$y]['title']['fr-ca'] = "Les langues"; //Google translate
+	$apps[$x]['menu'][$y]['title']['fr-fr'] = "Les langues"; //Google translate
+	$apps[$x]['menu'][$y]['title']['he-il'] = "שפות"; //Google translate
+	$apps[$x]['menu'][$y]['title']['it-it'] = "Le lingue"; //Google translate
+	$apps[$x]['menu'][$y]['title']['nl-nl'] = "Talen"; //Google translate
+	$apps[$x]['menu'][$y]['title']['pl-pl'] = "Języki"; //Google translate
+	$apps[$x]['menu'][$y]['title']['pt-br'] = "línguas"; //Google translate
+	$apps[$x]['menu'][$y]['title']['pt-pt'] = "línguas"; //Google translate
+	$apps[$x]['menu'][$y]['title']['ro-ro'] = "Limbile"; //Google translate
+	$apps[$x]['menu'][$y]['title']['ru-ru'] = "Языки"; //Google translate
+	$apps[$x]['menu'][$y]['title']['sv-se'] = "språk"; //Google translate
+	$apps[$x]['menu'][$y]['title']['uk-ua'] = "мови"; //Google translate
+	$apps[$x]['menu'][$y]['uuid'] = "13a8fd28-6718-4ac1-8acc-0bcffbce29c3";
+	$apps[$x]['menu'][$y]['parent_uuid'] = "0438b504-8613-7887-c420-c837ffb20cb1";
+	$apps[$x]['menu'][$y]['category'] = "internal";
+	$apps[$x]['menu'][$y]['path'] = "/app/languages/index.php";
+	$apps[$x]['menu'][$y]['groups'][] = "superadmin";
 
 ?>

+ 30 - 3
languages/index.php

@@ -55,6 +55,23 @@ require_once "resources/require.php";
 	require_once "resources/header.php";
 	require_once "resources/paging.php";
 
+function lineargradient($ra,$ga,$ba,$rz,$gz,$bz,$iterationnr) {
+	$colorindex = array();
+		for($iterationc=1; $iterationc<=$iterationnr; $iterationc++) {
+			$iterationdiff = $iterationnr-$iterationc;
+			$colorindex[] = sprintf('#%02x%02x%02x',
+			(($ra*$iterationc)+($rz*$iterationdiff))/$iterationnr,
+			(($ga*$iterationc)+($gz*$iterationdiff))/$iterationnr,
+			(($ba*$iterationc)+($bz*$iterationdiff))/$iterationnr);
+		}
+	return $colorindex;
+}
+
+$colorindex = lineargradient(
+	0, 200, 0,   // rgb of the start color
+	200, 0, 0, // rgb of the end color
+	101          // number of colors in your linear gradient
+);
 //show the content
 	echo "<table width='100%' cellpadding='0' cellspacing='0' border='0'>\n";
 	echo "	<tr>\n";
@@ -81,12 +98,21 @@ require_once "resources/require.php";
 	echo "<th nowrap='' style='width:4em'>".$text['label-translations']."</th>\n";
 	echo "<th nowrap='' style='width:4em'>".$text['label-menu_items']."</th>\n";
 	echo "<th nowrap='' style='width:4em'>".$text['label-app_descriptions']."</th>\n";
+	echo "<th nowrap='' style='width:4em'>".$text['label-overall']."</th>\n";
 	echo "<th nowrap=''>".$text['label-name']."</th>\n";
 	echo "</tr>\n";
 
 	$c = 0;
 	$warn_about_wrong_culture = false;
 	foreach($language->languages as $lang_code){
+		$complete['languages'] = sprintf("%.1f", $language_totals['languages'][$lang_code] / $language_totals['languages']['total'] * 100 );
+		$complete['menu_items'] = sprintf("%.1f", $language_totals['menu_items'][$lang_code] / $language_totals['menu_items']['total'] * 100 );
+		$complete['app_descriptions'] = sprintf("%.1f", $language_totals['app_descriptions'][$lang_code] / $language_totals['app_descriptions']['total'] * 100 );
+		$complete['overall'] = sprintf("%.1f",
+			( $language_totals['languages'][$lang_code] + $language_totals['menu_items'][$lang_code] + $language_totals['app_descriptions'][$lang_code] )
+			/ ($language_totals['languages']['total'] + $language_totals['menu_items']['total'] + $language_totals['app_descriptions']['total'] )
+			* 100
+		);
 		$tr_link = "href='languages_compare.php?target_language=$lang_code'";
 		echo "<tr $tr_link>\n";
 		echo "<td class='row_style".($c%2)."'>";
@@ -97,9 +123,10 @@ require_once "resources/require.php";
 			echo "$nbsp;<sup>*1</sup>";
 		}
 		echo "</td>";
-		echo "<td class='row_style".($c%2)."'".($language_totals['languages'][$lang_code] == $language_totals['languages']['total'] ? " style='color:#00DD00'" : '').">".sprintf("%.1f%%", $language_totals['languages'][$lang_code] / $language_totals['languages']['total'] * 100 )."</td>";
-		echo "<td class='row_style".($c%2)."'".($language_totals['menu_items'][$lang_code] == $language_totals['menu_items']['total'] ? " style='color:#00DD00'" : '').">".sprintf("%.1f%%", $language_totals['menu_items'][$lang_code] / $language_totals['menu_items']['total'] * 100 )."</td>";
-		echo "<td class='row_style".($c%2)."'".($language_totals['app_descriptions'][$lang_code] == $language_totals['app_descriptions']['total'] ? " style='color:#00DD00'" : '').">".sprintf("%.1f%%", $language_totals['app_descriptions'][$lang_code] / $language_totals['app_descriptions']['total'] * 100 )."</td>";
+		echo "<td class='row_style".($c%2)."' style='color:".$colorindex[intval($complete['languages'])]."'>".$complete['languages']."%</td>";
+		echo "<td class='row_style".($c%2)."' style='color:".$colorindex[intval($complete['menu_items'])]."'>".$complete['menu_items']."%</td>";
+		echo "<td class='row_style".($c%2)."' style='color:".$colorindex[intval($complete['app_descriptions'])]."'>".$complete['app_descriptions']."%</td>";
+		echo "<td class='row_style".($c%2)."' style='color:".$colorindex[intval($complete['overall'])]."'>".$complete['overall']."%</td>";
 		echo "<td class='row_style".($c%2)."'>".$text["language-$lang_code"]."</td>";
 		echo "</tr>\n";
 		$c++;