Пример #1
0
        private static string FormatUrlEntity(string targetText, TwitterEntityUrl entity)
        {
            string expandedUrl;

            // 過去に存在した壊れたエンティティの対策
            // 参照: https://dev.twitter.com/discussions/12628
            if (entity.DisplayUrl == null)
            {
                expandedUrl = MyCommon.ConvertToReadableUrl(targetText);
                return "<a href=\"" + e(entity.Url) + "\" title=\"" + e(expandedUrl) + "\">" + t(e(targetText)) + "</a>";
            }

            expandedUrl = MyCommon.ConvertToReadableUrl(entity.ExpandedUrl);
            return "<a href=\"" + e(entity.Url) + "\" title=\"" + e(expandedUrl) + "\">" + t(e(entity.DisplayUrl)) + "</a>";
        }
Пример #2
0
        private static string FormatUrlEntity(string targetText, TwitterEntityUrl entity)
        {
            string expandedUrl;

            // 過去に存在した壊れたエンティティの対策
            // 参照: https://dev.twitter.com/discussions/12628
            if (entity.DisplayUrl == null)
            {
                expandedUrl = MyCommon.ConvertToReadableUrl(targetText);
                return "<a href=\"" + e(entity.Url) + "\" title=\"" + e(expandedUrl) + "\">" + t(e(targetText)) + "</a>";
            }

            expandedUrl = MyCommon.ConvertToReadableUrl(entity.ExpandedUrl);
            var linkUrl = entity.Url;

            // twitter.com へのリンクは t.co を経由せずに直接リンクする (但し pic.twitter.com はそのまま)
            if (!(entity is TwitterEntityMedia))
            {
                if (entity.ExpandedUrl.StartsWith("https://twitter.com/") ||
                    entity.ExpandedUrl.StartsWith("http://twitter.com/"))
                {
                    linkUrl = entity.ExpandedUrl;
                }
            }

            return "<a href=\"" + e(linkUrl) + "\" title=\"" + e(expandedUrl) + "\">" + t(e(entity.DisplayUrl)) + "</a>";
        }