読者です 読者をやめる 読者になる 読者になる

tohokuaikiのチラシの裏

技術的ネタとか。

Confluenceのプラグイン開発を承ります。ご連絡はこちらのホームページからお願いいたします。

Confluenceでリンクを再度編集しようとしてたら文字化けになってしまうバグの対応

confluence

Confluenceでリンクを設定してその後で編集しようとして
f:id:tohokuaiki:20141128194620p:plain
数値参照になってしまうのは昔から困ったバグなのですが、なかなか直りません*1

こんな感じで困ってらっしゃる方もいらっしゃいます。
リンク編集時の文字化け - GakuNinmAPpublic - meatwiki

根本的な対応ではないのですが、とりあえず

管理画面から、カスタムHTMLののところにこのJavaScript貼ってみてください。

<script type="text/javascript">
AJS.$.ajaxSettings.complete = (function($){
    return function(xhr, status){
        var _r = function(text){
            if (typeof(text) == "string"){
                while(text.match(/&#([0-9]+?);/) ){
                    text = text.replace(/&#([0-9]+?);/, String.fromCharCode(RegExp.$1));
                }
                return text;
            }
            return "";
        };
        $('#insert-link-dialog #link-search-text').val(_r($('#insert-link-dialog #link-search-text').val()));
    };
})(AJS.$);
</script>

こんな感じですね。
f:id:tohokuaiki:20141128194610p:plain

多分他の箇所に影響ないとは思いますが・・・・。

追記

昔設定したConfluenceにこんなのあった。これでもいい・・・のか?

<script type="text/javascript">
var link_search_text_interval = setInterval(function() {
    var tmpdomid = "kod-html-entity-decoded-dom";
    var v = "<div id='"+tmpdomid+"'>"+$('#link-search-text').val()+"</div>";
    $('body').append(v);
    $('#link-search-text').val($('div#'+tmpdomid).html());
    $('#'+tmpdomid).remove();
}, 1000);
</script>

*1:正確には一時直ったらしいのだけどまたエンバグしたらしい