var init_solutions = function() {
    var articlePreface = document.getElementById('articlePreface');
    var articleContent = document.getElementById('articleContent');
    var articleMenu = document.getElementById('articleMenu');

    var separators = articleContent.getElementsByTagName('HR');
    if (!separators.length)
        return;
    
    var separator = separators[0];
    moveNodeUntil(articleContent, articlePreface, separator);
    
    articleMenu.style.display = 'block';
    separator.style.display = 'none';
}

var moveNodeUntil = function(from, to, until) {
    var nodes = from.childNodes;
    while (from.firstChild && from.firstChild != until) {
        var stop = moveNodeUntil(from.firstChild, to.appendChild(from.firstChild.cloneNode(false)), until);
        if (stop)
            return true;
        from.removeChild(from.firstChild);
    }
    return (from.firstChild == until)
}

registerPloneFunction(init_solutions);
