Skip to content

Commit

Permalink
Updated feature: Usability: In login and user language selection the …
Browse files Browse the repository at this point in the history
…select box is ordered now by the native language. In other language list boxes the native language won't be shown anymore.

Dev Updated some button texts for better usability
Updated translation: German


git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey@8421 b72ed6b6-b9f8-46b5-92b4-906544132732
  • Loading branch information
c-schmitz committed Feb 21, 2010
1 parent ec12bb8 commit fae2128
Show file tree
Hide file tree
Showing 9 changed files with 361 additions and 318 deletions.
4 changes: 2 additions & 2 deletions admin/globalsettings.php
Original file line number Diff line number Diff line change
Expand Up @@ -168,11 +168,11 @@ function globalsettingsdisplay()
. "\t<li><label for='defaultlang'>".$clang->gT("Default site language:").(($demoModeOnly==true)?'*':'')."</label>\n"
. "\t\t<select name='defaultlang' id='defaultlang'>\n";
$actuallang=getGlobalSetting('defaultlang');
foreach (getLanguageData() as $langkey2=>$langname)
foreach (getLanguageData(true) as $langkey2=>$langname)
{
$editsurvey .= "\t\t\t<option value='".$langkey2."'";
if ($actuallang == $langkey2) {$editsurvey .= " selected='selected'";}
$editsurvey .= ">".$langname['description']." - ".$langname['nativedescription']."</option>\n";
$editsurvey .= ">".$langname['nativedescription']." - ".$langname['description']."</option>\n";
}

$editsurvey .= "\t\t</select></li>";
Expand Down
4 changes: 2 additions & 2 deletions admin/grouphandling.php
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
. getEditor("group-desc","description_".$grouplang, "[".$clang->gT("Description:", "js")."](".$grouplang.")",$surveyid,'','',$action)
. "</li>\n"
. "</ul>"
. "\t<p><input type='submit' value='".$clang->gT("Add Group")."' />\n"
. "\t<p><input type='submit' value='".$clang->gT("Save question group")."' />\n"
. "</div>\n";
}

Expand All @@ -71,7 +71,7 @@
. "<input id='the_file' name=\"the_file\" type=\"file\" size=\"35\" /></li>\n"
. "<li><label for='translinksfields'>".$clang->gT("Convert resources links?")."</label>\n"
. "<input id='translinksfields' name=\"translinksfields\" type=\"checkbox\" checked=\"checked\"/></li></ul>\n"
. "\t<p><input type='submit' value='".$clang->gT("Import Group")."' />\n"
. "\t<p><input type='submit' value='".$clang->gT("Import question group")."' />\n"
. "\t<input type='hidden' name='action' value='importgroup' />\n"
. "\t<input type='hidden' name='sid' value='$surveyid' />\n"
. "\t</form>\n";
Expand Down
29 changes: 14 additions & 15 deletions admin/html.php
Original file line number Diff line number Diff line change
Expand Up @@ -223,11 +223,11 @@
$cssummary .= "<li>\n"
. "<label for='lang'>".$clang->gT("Interface language").":</label>\n"
. "<select id='lang' name='lang'>\n";
foreach (getlanguagedata() as $langkey=>$languagekind)
foreach (getlanguagedata(true) as $langkey=>$languagekind)
{
$cssummary .= "<option value='$langkey'";
if ($langkey == $_SESSION['adminlang']) {$cssummary .= " selected='selected'";}
$cssummary .= ">".$languagekind['description']." - ".$languagekind['nativedescription']."</option>\n";
$cssummary .= ">".$languagekind['nativedescription']." - ".$languagekind['description']."</option>\n";
}
$cssummary .= "</select>\n"
. "</li>\n";
Expand Down Expand Up @@ -724,7 +724,7 @@

. "<tr><td align='right' valign='top'><strong>"
. $clang->gT("Base Language:")."</strong></td>\n";
if (!$surveyinfo['language']) {$language=getLanguageNameFromCode($currentadminlang);} else {$language=getLanguageNameFromCode($surveyinfo['language']);}
if (!$surveyinfo['language']) {$language=getLanguageNameFromCode($currentadminlang,false);} else {$language=getLanguageNameFromCode($surveyinfo['language'],false);}
$surveysummary .= "<td align='left'>$language</td></tr>\n";

// get the rowspan of the Additionnal languages row
Expand All @@ -741,7 +741,7 @@
{
if (!$first) {$surveysummary .= "<tr><td>&nbsp;</td>";}
$first=false;
$surveysummary .= "<td align='left'>".getLanguageNameFromCode($langname)."</td></tr>\n";
$surveysummary .= "<td align='left'>".getLanguageNameFromCode($langname,false)."</td></tr>\n";
}
}
if ($first) $surveysummary .= "</tr>";
Expand Down Expand Up @@ -779,7 +779,7 @@
$surveysummary .= $clang->gT("Survey cannot be activated yet.")."<br />\n";
if ($sumcount2 == 0 && hasRight($surveyid,'define_questions'))
{
$surveysummary .= "<font class='statusentryhighlight'>[".$clang->gT("You need to add groups")."]</font><br />";
$surveysummary .= "<font class='statusentryhighlight'>[".$clang->gT("You need to add question groups")."]</font><br />";
}
if ($sumcount3 == 0 && hasRight($surveyid,'define_questions'))
{
Expand Down Expand Up @@ -1871,7 +1871,7 @@
$exportstructure .= "<form name='exportstructureGroup' action='$scriptname' method='post'>\n"
."<p>\n"
."<input type='radio' class='radiobtn' name='type' value='structurecsvGroup' checked='checked' id='surveycsv' onclick=\"this.form.action.value='exportstructurecsvGroup'\"/>\n"
."<label for='surveycsv'>".$clang->gT("LimeSurvey group file (*.csv)")."</label>\n"
."<label for='surveycsv'>".$clang->gT("LimeSurvey question group file (*.csv)")."</label>\n"
."</p>";

// $exportstructure.="<input type='radio' class='radiobtn' name='type' value='structurequeXMLGroup' id='queXML' onclick=\"this.form.action.value='exportstructurequexml'\" />"
Expand Down Expand Up @@ -2193,7 +2193,7 @@

// Additional languages listbox
. "<li><label for='additional_languages'>".$clang->gT("Additional Languages").":</label>\n"
. "<table><tr><td align='left'><select multiple='multiple' style='min-width:250px;' size='5' id='additional_languages' name='additional_languages'>";
. "<table><tr><td align='left'><select style='min-width:220px;' size='5' id='additional_languages' name='additional_languages'>";
$jsX=0;
$jsRemLang ="<script type=\"text/javascript\">
var mylangs = new Array();
Expand All @@ -2205,7 +2205,7 @@
{
$jsRemLang .="mylangs[$jsX] = \"$langname\"\n";
$editsurvey .= "<option id='".$langname."' value='".$langname."'";
$editsurvey .= ">".getLanguageNameFromCode($langname)."</option>\n";
$editsurvey .= ">".getLanguageNameFromCode($langname,false)."</option>\n";
$jsX++;
}
}
Expand All @@ -2216,14 +2216,14 @@
. "<td align='left'><input type=\"button\" value=\"<< ".$clang->gT("Add")."\" onclick=\"DoAdd()\" id=\"AddBtn\" /><br /> <input type=\"button\" value=\"".$clang->gT("Remove")." >>\" onclick=\"DoRemove(0,'')\" id=\"RemoveBtn\" /></td>\n"

// Available languages listbox
. "<td align='left'><select size='5' id='available_languages' name='available_languages'>";
. "<td align='left'><select size='5' style='min-width:220px;' id='available_languages' name='available_languages'>";
$tempLang=GetAdditionalLanguagesFromSurveyID($surveyid);
foreach (getLanguageData() as $langkey2=>$langname)
{
if ($langkey2!=$esrow['language'] && in_array($langkey2,$tempLang)==false) // base languag must not be shown here
{
$editsurvey .= "<option id='".$langkey2."' value='".$langkey2."'";
$editsurvey .= ">".$langname['description']." - ".$langname['nativedescription']."</option>\n";
$editsurvey .= ">".$langname['description']."</option>\n";
}
}
$editsurvey .= "</select></td>"
Expand All @@ -2245,7 +2245,6 @@

// End General TAB
// Create Survey Button
// $editsurvey .= "<li><label for=''></label><input type='button' onclick='javascript:document.getElementById(\"addnewsurvey\").submit();' value='".$clang->gT("Create Survey")."' /></li>\n";
$editsurvey .= "</ul></div>\n";

// Presentation and navigation TAB
Expand Down Expand Up @@ -2874,7 +2873,7 @@

// End General TAB
// Create Survey Button
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Create Survey")."' /></p>\n";
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Save survey")."' /></p>\n";

$newsurvey .= "</div>\n";

Expand Down Expand Up @@ -2983,7 +2982,7 @@

// End Presention and navigation TAB
// Create Survey Button
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Create Survey")."' /></p>\n";
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Save survey")."' /></p>\n";
$newsurvey .= "</div>\n";

// Publication and access control TAB
Expand Down Expand Up @@ -3052,7 +3051,7 @@

// End Publication and access control TAB
// Create Survey Button
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Create Survey")."' /></p>\n";
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Save survey")."' /></p>\n";
$newsurvey .= "</div>\n";

// Notification and Data management TAB
Expand Down Expand Up @@ -3128,7 +3127,7 @@

// End Notification and Data management TAB
// Create Survey Button
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Create Survey")."' /></p>\n";
$newsurvey .= "<p><input type='button' onclick=\"if (isEmpty(document.getElementById('surveyls_title'), '".$clang->gT("Error: You have to enter a title for this survey.",'js')."')) { document.getElementById('addnewsurvey').submit(); }; return false;\" value='".$clang->gT("Save survey")."' /></p>\n";
$newsurvey .= "</div>\n";
$newsurvey .= "</form>\n";

Expand Down
10 changes: 5 additions & 5 deletions admin/labels.php
Original file line number Diff line number Diff line change
Expand Up @@ -135,32 +135,32 @@
."</li>\n"
// Additional languages listbox
. "\t<li><label>".$clang->gT("Languages:")."</label>\n"
. "<table><tr><td align='left'><select multiple='multiple' style='min-width:250px;' size='5' id='additional_languages' name='additional_languages'>";
. "<table><tr><td align='left'><select multiple='multiple' style='min-width:220px;' size='5' id='additional_languages' name='additional_languages'>";
foreach ($langidsarray as $langid)
{
$labelsoutput.= "\t<option id='".$langid."' value='".$langid."'";
$labelsoutput.= ">".getLanguageNameFromCode($langid)."</option>\n";
$labelsoutput.= ">".getLanguageNameFromCode($langid,false)."</option>\n";
}

// Add/Remove Buttons
$labelsoutput.= "</select></td>"
. "<td align='left'><input type=\"button\" value=\"<< ".$clang->gT("Add")."\" onclick=\"DoAdd()\" id=\"AddBtn\" /><br /> <input type=\"button\" value=\"".$clang->gT("Remove")." >>\" onclick=\"DoRemove(1,'".$clang->gT("You cannot remove this item since you need at least one language in a labelset.", "js")."')\" id=\"RemoveBtn\" /></td>\n"

// Available languages listbox
. "<td align='left'><select size='5' id='available_languages' name='available_languages'>";
. "<td align='left'><select size='5' style='min-width:220px;' id='available_languages' name='available_languages'>";
foreach (getLanguageData() as $langkey=>$langname)
{
if (in_array($langkey,$langidsarray)==false) // base languag must not be shown here
{
$labelsoutput.= "\t<option id='".$langkey."' value='".$langkey."'";
$labelsoutput.= ">".$langname['description']." - ".$langname['nativedescription']."</option>\n";
$labelsoutput.= ">".$langname['description']."</option>\n";
}
}

$labelsoutput.= "\t</select></td>"
." </tr></table></li></ul>\n"
."<p><input type='submit' value='";
if ($action == "newlabelset") {$labelsoutput.= $clang->gT("Add");}
if ($action == "newlabelset") {$labelsoutput.= $clang->gT("Save label set");}
else {$labelsoutput.= $clang->gT("Update");}
$labelsoutput.= "' />\n"
."<input type='hidden' name='action' value='";
Expand Down
4 changes: 2 additions & 2 deletions admin/login_check.php
Original file line number Diff line number Diff line change
Expand Up @@ -195,9 +195,9 @@
<li><label for='loginlang'>".$clang->gT("Language")."</label>
<select id='loginlang' name='loginlang' style='width:216px;'>\n";
$loginsummary .='<option value="default">'.$clang->gT('Default').'</option>';
foreach (getlanguagedata() as $langkey=>$languagekind)
foreach (getlanguagedata(true) as $langkey=>$languagekind)
{
$loginsummary .= "\t\t\t\t<option value='$langkey'>".$languagekind['description']." - ".$languagekind['nativedescription']."</option>\n";
$loginsummary .= "\t\t\t\t<option value='$langkey'>".$languagekind['nativedescription']." - ".$languagekind['description']."</option>\n";
}
$loginsummary .= "\t\t\t</select>\n"
. "</li>
Expand Down
2 changes: 1 addition & 1 deletion admin/questionhandling.php
Original file line number Diff line number Diff line change
Expand Up @@ -459,7 +459,7 @@

if ($adding)
{
$editquestion .="<p><input type='submit' value='".$clang->gT("Add question")."' />\n"
$editquestion .="<p><input type='submit' value='".$clang->gT("Save question")."' />\n"
. "\t<input type='hidden' name='action' value='insertnewquestion' />\n";
}
else
Expand Down
22 changes: 20 additions & 2 deletions classes/core/surveytranslator.php
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ function getLanguageDetails($codetosearch)
}
}

function getLanguageData() {
function getLanguageData($orderbynative=false) {
global $clang;

// Albanian
Expand Down Expand Up @@ -447,7 +447,14 @@ function getLanguageData() {
$supportedLanguages['vi']['rtl'] = false;
$supportedLanguages['vi']['dateformat'] = 5;

uasort($supportedLanguages,"user_sort");
if ($orderbynative)
{
uasort($supportedLanguages,"user_sort_native");
}
else
{
uasort($supportedLanguages,"user_sort");
}

Return $supportedLanguages;
}
Expand All @@ -463,6 +470,17 @@ function user_sort($a, $b) {
}
}

function user_sort_native($a, $b) {
// smarts is all-important, so sort it first

if($a['nativedescription'] >$b['nativedescription']) {
return 1;
}
else {
return -1;
}
}


/* // future languages
// Afrikaans
Expand Down
Binary file modified locale/de/LC_MESSAGES/de.mo
Binary file not shown.

0 comments on commit fae2128

Please sign in to comment.