public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            try
            {
                var valueString = value as string;
                if (valueString == null)
                {
                    return(string.Empty);
                }

                var name = GlobalizedApplication.Instance.GetResourceString(valueString);
                if (!string.IsNullOrWhiteSpace(name))
                {
                    return(name);
                }

                name = GameData.FriendlyMapNameForClass(valueString, true);
                if (!string.IsNullOrWhiteSpace(name))
                {
                    return(name);
                }

                var mapName = ModUtils.GetMapName(valueString);

                // check if the name is stored in the globalization file
                name = GlobalizedApplication.Instance.GetResourceString(mapName);
                if (!string.IsNullOrWhiteSpace(name))
                {
                    return(name);
                }

                if (!string.IsNullOrWhiteSpace(mapName))
                {
                    return(mapName);
                }

                return(valueString);
            }
            catch
            {
                return(value ?? string.Empty);
            }
        }