LocalizedString class: Difference between revisions
From Catglobe Wiki
More actions
No edit summary  | 
				No edit summary Β   | 
				||
| Line 74: | Line 74: | ||
AxisSet_save();  | AxisSet_save();  | ||
print(Catglobe.Json.Encode(axis));//{"id":"Gender","title":{"en-GB":"Title En text","da-DK":"title Da text"},"desc":{"":"123","en-GB":"Description En text","da-DK":"Description Da text"},"mathbase":"Gender","mathbasemod":"","pctbase":"Gender != empty","color":"#00000000","options":[{"title":{"":"Male"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]},{"title":{"":"Female"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]}],"tags":[],"accessGroups":[]}  | print(Catglobe.Json.Encode(axis));//{"id":"Gender","title":{"en-GB":"Title En text","da-DK":"title Da text"},"desc":{"":"123","en-GB":"Description En text","da-DK":"Description Da text"},"mathbase":"Gender","mathbasemod":"","pctbase":"Gender != empty","color":"#00000000","options":[{"title":{"":"Male"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]},{"title":{"":"Female"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]}],"tags":[],"accessGroups":[]}  | ||
</source>  | |||
<span style="color:#DF8621">Set Question text </span>  | |||
<source lang="javascript">  | |||
QuestionnaireTemplate qt = new QuestionnaireTemplate (new Questionnaire(17148177).TemplateId);  | |||
qt.GetQuestion("Q1").Text = new LocalizedString ({"": "Q1 text UK", "da-DK": "Q1 text DK"}, "en-GB");  | |||
qt.Save(true);  | |||
print(qt.GetQuestion("Q1").Text.ToDictionary());  | |||
</source>  | </source>  | ||
Latest revision as of 07:46, 11 May 2022
LocalizedString
Represents translation of a string.
Parent class
Inherits from object
Constructors
- () - Create a new translatable text
 - (Dictionary dictionary "Dictionary with existing values", string defaultIsocode "If given use this isocodes value in the dictionary as the default") - Create a new translatable text based on existing dictionary
 
Methods
- string GetSpecificTranslation(string isocode "Isocode for language. Use empty for default text") - Get the translation for given isocode or null
 - string GetTranslation(string isocode "Isocode for language. Use empty for default text") - Get the best matching translation for given isocode
 - string GetTranslationForLoggedInUser() - Get the best matching translation for the current user
 - bool RemoveTranslation(string isocode "Isocode for language. Use empty for default text") - Remove a specific translation
 - Empty SetTranslation(string isocode "Isocode for language. Use empty for default text", string s "New translation") - Set a specific translation
 - Empty SetTranslation(Dictionary dictionary "Dictionary of iso code and translation") - Set all translations. Removes the rest.
 - Dictionary ToDictionary() - Convert localized object to a dictionary with key is iso code
 - (From object) string ToString() - The string representation of the object.
 
Properties
- string ObjectTypeName { get;  } - The name of the type of object.
 - (From object) TypeInformation TypeInformation { get;  } - Get information about this class.
 
Examples
Create a new translatable text
LocalizedString localizedString = new LocalizedString ();
//SetTranslation
localizedString.SetTranslation("en-GB", "En text");
localizedString.SetTranslation("da-DK", "Da text");
//GetTranslation
print(localizedString.GetSpecificTranslation("en-GB"));//En text
print(localizedString.GetSpecificTranslation("da-DK"));//Da text
print(localizedString.GetSpecificTranslation("en-US"));//Empty
print(localizedString.GetTranslation("en-US"));//En text
print(localizedString.GetTranslationForLoggedInUser());//"Da text" if languge of login user is Danish
//RemoveTranslation
localizedString.RemoveTranslation("en-GB");
print(localizedString.GetSpecificTranslation("en-GB"));//Empty
Create a new translatable text based on existing dictionary
Dictionary translation = {
	"en-GB":"En text",
	"da-DK":"Da text"	
};
LocalizedString localizedString = new LocalizedString (translation, "da-DK");
//GetTranslation
print(localizedString.GetSpecificTranslation(""));//Da text
//SetTranslation
localizedString.SetTranslation("","Danish text");
print(localizedString.GetSpecificTranslation(""));//Danish text
Set Title and Description for Axis
DCS_use(15636575);
Axis axis = AxisSet_getAxis("Gender");
//set Titles
axis.LocalizedTitles.SetTranslation("en-GB", "Title En text");
axis.LocalizedTitles.SetTranslation("da-DK", "title Da text");
//set Texts
axis.LocalizedTexts.SetTranslation("en-GB", "Description En text");
axis.LocalizedTexts.SetTranslation("da-DK", "Description Da text");
AxisSet_save();
print(Catglobe.Json.Encode(axis));//{"id":"Gender","title":{"en-GB":"Title En text","da-DK":"title Da text"},"desc":{"":"123","en-GB":"Description En text","da-DK":"Description Da text"},"mathbase":"Gender","mathbasemod":"","pctbase":"GenderΒ != empty","color":"#00000000","options":[{"title":{"":"Male"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]},{"title":{"":"Female"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]}],"tags":[],"accessGroups":[]}
Set Question text
QuestionnaireTemplate qt = new QuestionnaireTemplate (new Questionnaire(17148177).TemplateId);
qt.GetQuestion("Q1").Text = new LocalizedString ({"": "Q1 text UK", "da-DK": "Q1 text DK"}, "en-GB");
qt.Save(true);
print(qt.GetQuestion("Q1").Text.ToDictionary());