Toggling buttons within a div
Here are some of my suggestions:


Declare static things at the top. i.e. var ch = ['success','default']; it is declared twice.
Duplicate code should be pulled into functions (see below).
Be consistent: el.removeClass('btn-default').addClass('btn-success'); and el.removeClass('btn-'+ch[1]).addClass('btn-'+ch[0]); Either make use of ch or get rid of it (I suggest the first).


Duplicate code:

var el = $(el);
var name = el.html();
var ch = ['success','default'];
if(!chosen[name]) ch.unshift(ch.pop());
el.removeClass('btn-'+ch[0]).addClass('btn-'+ch[1]);
chosen[name] = !chosen[name];


Something like:

var ch = ['success','default'], 
    toggleElement = function (el) {
        var el = $(el),
            name = el.html();

        if(!chosen[name]) ch.unshift(ch.pop());
        el.removeClass('btn-'+ch[0]).addClass('btn-'+ch[1]);
        chosen[name] = !chosen[name];
    };


Your case 0 and case 1 statements could be made into a function as well as they're identical (other than the true/false).