function individualArchivesOnComplete( id ) {
    var f = $('comments_form_' + id);
    if(f.ajax)
        f.ajax.value = id;
    if(f.email != undefined &&
       (mtcmtmail = getCookie("mtcmtmail")))
        f.email.value = mtcmtmail;
    if(f.author != undefined &&
       (mtcmtauth = getCookie("mtcmtauth")))
        f.author.value = mtcmtauth;
    if(f.url != undefined && 
       (mtcmthome = getCookie("mtcmthome")))
        f.url.value = mtcmthome;
    if(f.bakecookie && (mtcmtauth || mtcmthome)) {
        f.bakecookie.checked = true;
    } else {
        f.bakecookie.checked = false;
    }
    cn = $('comments_num_'+id);
    cv = $('current_comments_num_'+id);
    if(cn && cv){
        cn.innerHTML = cv.value;
    }
}

function checkComment( f ) {
    if(f.author && ( f.author.value == '' || f.author.value.length > 20 )){
        alert('名前を20文字以内で入力してください');
        return false;
    }
    if(f.body){
        if( f.body.value == ''){
            alert('コメントを入力してください');
            return false;
        } else if (f.body.value.length > 500) {
            alert('コメントは500文字以内で入力してください');
            return false;
        }
    }
    if(f.url && f.url.value != '' && !f.url.value.match(/^http:\/\//)){
        alert('URL は http:// の形式で入力してください');
        return false;
    }

    if( f.ajax && f.ajax.value != 0 ){
        var id = f.ajax.value;
        new Ajax.Updater('comments_container_' + id,
                         f.action,
                         {
                             method: 'post',
                             parameters: Form.serialize( f ),
                             onComplete: function(){ individualArchivesOnComplete(id) }
                         });
        f.innerHTML = '<img src="/static/css/ajax-loader.gif" />';
        return false;
    }
    return true;
}

function partComments( uri, id ){
    var d = new Date();
    var pcon = $('trackbacks_container_'+id);
    if(pcon){
        pcon.style.display = 'none';
    }
    var con  = $('comments_container_'+id);
    if(con && !con.innerHTML){
        con.style.display = 'block';
        con.innerHTML = '<img src="/static/css/ajax-loader.gif" />';
        new Ajax.Updater('comments_container_' + id,
                         uri,
                         {
                             method: 'get',
                             parameters: 'part=comments',
                             onComplete: function(){ individualArchivesOnComplete(id) }
                         });
    } else {
        con.style.display = con.style.display == 'block' ? 'none' : 'block';
    }
    return false;
}

function partTrackbacks( uri, id ){
    var d = new Date();
    var ccom = $('comments_container_'+id);
    if(ccom){
        ccom.style.display = 'none';
    }
    var con  = $('trackbacks_container_'+id);
    if(con && !con.innerHTML){
        con.style.display = 'block';
        con.innerHTML = '<img src="/static/css/ajax-loader.gif" />';
        new Ajax.Updater('trackbacks_container_' + id,
                         uri,
                         {
                             method: 'get',
                             parameters: 'part=trackbacks',
                             onComplete: function(){ individualArchivesOnComplate(id) }
                         });
    } else {
        con.style.display = ( con.style.display == 'block' ) ? 'none' : 'block';
    }
    return false;
}

