/* 
 * pager: アーティクル改ページ処理
 * Copyright Cheersol,co 2009
 */

/* 改ページタグ挿入 */
function addPagerTag()
{
    var obj = document.article.body;
    obj.focus();

    var tag = "\n<!-- MORE -->\n";
    var top = obj.scrollTop;
    var n;

    if (window.navigator.appName.indexOf('Microsoft') != -1) {  // IE
        var docRange = document.selection.createRange();
        var textRange = document.body.createTextRange();
        textRange.moveToElementText(obj);

        var range = textRange.duplicate();
        range.setEndPoint('EndToStart', docRange);
        n = range.text.length;
    } else {
        n = obj.selectionStart;
    }

    var before = obj.value.substring(0, n);
    var after = obj.value.substring(n, obj.value.length);
    obj.value = before + tag + after;

    if (window.navigator.appName.indexOf('Microsoft') != -1) { // IE
        var e = obj.createTextRange();
        var tx = obj.value.substr(0, n + tag.length);
        var pl = tx.split(/\n/);
        e.collapse(true);
        e.moveStart('character', n + tag.length - pl.length + 1);
        e.text = e.text + '';
        e.collapse(false);
        e.select();
    } else {
        obj.scrollTop = top;
        obj.setSelectionRange(n + tag.length, n + tag.length);
    }
}

/* 次ページボタン */
function nextPage(max, gotop) {
    if (page >= max) return;

    visiblePage(page, false);
    page++;
    visiblePage(page, true);

    if (page == max) {
        document.getElementById('nextButton').disabled = true;
        document.getElementById('prevButton').disabled = false;
        document.getElementById('nextButton2').disabled = true;
        document.getElementById('prevButton2').disabled = false;
    } else {
        document.getElementById('nextButton').disabled = false;
        document.getElementById('prevButton').disabled = false;
        document.getElementById('nextButton2').disabled = false;
        document.getElementById('prevButton2').disabled = false;
    }
    document.getElementById('page').innerHTML = page;
    document.getElementById('page2').innerHTML = page;
    if (gotop) location.hash = 'view_top';
}

/* 前ページボタン */
function prevPage(max, gotop) {
    if (page <= 1) return;

    visiblePage(page, false);
    page--;
    visiblePage(page, true);

    if (page == 1) {
        document.getElementById('nextButton').disabled = false;
        document.getElementById('prevButton').disabled = true;
        document.getElementById('nextButton2').disabled = false;
        document.getElementById('prevButton2').disabled = true;
    } else {
        document.getElementById('nextButton').disabled = false;
        document.getElementById('prevButton').disabled = false;
        document.getElementById('nextButton2').disabled = false;
        document.getElementById('prevButton2').disabled = false;
    }
    document.getElementById('page').innerHTML = page;
    document.getElementById('page2').innerHTML = page;
    if (gotop) location.hash = 'view_top';
}

/* 対象のページを表示／非表示にする */
function visiblePage(_page, visible)
{
    var target = document.getElementById('page_'.concat(_page));
    target.style.display=(visible ? 'block' : 'none');
}

