/*
 * misc-1.0.2.js
 */
// Misc
function hasWindowExternal() {
    return (typeof(window.external) != 'undefined');
}

function hasWindowSidebar() {
    return (typeof(window.sidebar) != 'undefined');
}
// /Misc

// Focus
function setFocus(id) {
    if (typeof(document.getElementById) != 'undefined') {
        var obj = document.getElementById(id);
        if (obj && obj.type == 'text') {
            obj.focus();
        }
    }
}
// /Focus

// Move
function moveTo(url, qp, id, ie, op) {
    var q = document.forms[0].q.value;
    if (typeof(encodeURIComponent) == 'function') {
        var eq = encodeURIComponent(q);
        location.href = url + '?' + (op ? op + '&' : '') + 'ie=utf8&' + qp + '=' + eq;
        return false;
    }
    if (ie) {
        window.location.href = url + '?' + (op ? op + '&' : '') + 'ie=' + ie + '&' + qp + '=' + q;
        return false;
    }
    window.location.href = url + '?' + qp + '=' + q;
    return false;
}
// /Move

// Favorite
function writeFavoriteLink(favoriteName, favoriteUrl, searchProviderXml, searchEngineSrcBase) {
    if (hasAddSearchProvider()) {
        var src;
        src = '&nbsp;｜&nbsp;';
        src += '<a href="#" onclick="addSearchProvider(';
        src += '&quot;' + searchProviderXml + '&quot;';
        src += ')">ブラウザに追加</a>';
        document.write(src);
    /*
    } else if (hasAddSearchEngine()) {
        ar src;
        src = '&nbsp;｜&nbsp;';
        src += '<a href="#" onclick="addSearchEngine(';
        src += '&quot;' + favoriteName + '&quot;, &quot;' + searchEngineSrcBase + '&quot;';
        src += ')">ブラウザに追加</a>';
        document.write(src);
    */
    } else if (hasAddFavorite()) {
        var src;
        src = '&nbsp;｜&nbsp;';
        src += '<a href="#" onclick="addFavorite(';
        src += '&quot;' + favoriteName + '&quot;, &quot;' + favoriteUrl + '&quot;';
        src += ')">お気に入りに登録</a>';
        document.write(src);
    } else {
        var src;
        src = '&nbsp;｜&nbsp;';
        src += '<a href="http://docs.livedoor.com/dokodemo/bookmark.html">お気に入りに登録</a>';
        document.write(src);
    }
}

function hasAddFavorite() {
    if (hasWindowExternal()) {
        try {
            return  (typeof(window.external.AddFavorite) != 'undefined');
        } catch (e)
        {
        }
    }
    return false;
}

function addFavorite(favoriteName, favoriteUrl) {
    if (hasAddFavorite()) {
        window.external.AddFavorite(favoriteUrl, favoriteName);
    } else {
        document.location.href = "http://docs.livedoor.com/dokodemo/bookmark.html";
    }
}

function hasAddSearchProvider() {
    if (hasWindowExternal()) {
        try {
            return (typeof(window.external.AddSearchProvider) != 'undefined');
        } catch (e)
        {
        }
    }
    return false;
}

function addSearchProvider(searchProviderXml) {
    if (hasAddSearchProvider()) {
        window.external.AddSearchProvider(searchProviderXml);
    }
}

function hasAddSearchEngine() {
    if (hasWindowSidebar()) {
        return (typeof(window.sidebar.addSearchEngine) != 'undefined');
    }
    return false;
}

function addSearchEngine(favoriteName, searchEngineSrcBase) {
    if (hasAddSearchEngine()) {
        window.sidebar.addSearchEngine(
            searchEngineSrcBase + '.src',
            searchEngineSrcBase + '.gif',
            favoriteName,
            ''
        );
    }
}
// /Favorite

