jQuery(function($) {

    var bbCode = {
        insert: function(code) {

            var bbCode;

            switch (code) {

                case 'bold':
                    var text = prompt('Fetter Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[b]'+text+'[/b]';
                break;

                case 'italic':
                    var text = prompt('Kursiver Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[i]'+text+'[/i]';
                break;

                case 'underline':
                    var text = prompt('Unterstrichener Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[u]'+text+'[/u]';
                break;

                case 'strike':
                    var text = prompt('Durchgestrichener Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[s]'+text+'[/s]';
                break;

                case 'link':
                    var link = prompt('Adresse des Links:', 'http://');
                    link = (link == null) ? 'http://' : link;
                    var text = prompt('Titel des Links:');
                    text = (text == null) ? '' : text;
                    bbCode = '[url='+link+']'+text+'[/url]';
                break;

                case 'image':
                    var image = prompt('Adresse des Bildes:');
                    image = (image == null) ? '' : image;
                    bbCode = "\n"+'[img]'+image+'[/img]';
                break;

                case 'headline':
                    var size = prompt('Schriftgröße (1-6):');
                    size = (size == null) ? '1' : size;
                    var text = prompt('Überschrift:');
                    text = (text == null) ? '' : text;
                    bbCode = "\n"+'[h'+size+']'+text+'[/h'+size+']';
                break;

                case 'ulist':
                    var cols = prompt('Anzahl der Zeilen:');
                    cols = (cols > 1) ? '#'+cols : '';
                    bbCode = "\n"+'[list=ul'+cols+']'+"\n\n"+'[/list]';
                break;

                case 'olist':
                    var start = prompt('Beginn der Aufzählung:');
                    start = (start > 1) ? '#'+start : '';
                    bbCode = "\n"+'[list=ol'+start+']'+"\n\n"+'[/list]';
                break;

                case 'indent':
                    var px = prompt('Texteinzug (px):');
                    px = (text == null) ? '' : px;
                    bbCode = "\n"+'[indent='+px+'][/indent]';
                break;

                case 'class':
                    var cssClass = prompt('CSS-Klasse:');
                    cssClass = (cssClass == null) ? '' : cssClass;
                    bbCode = "\n"+'[class='+cssClass+']'+'[/class]';
                break;

                case 'size':
                    var size = prompt('Schriftgröße (px / em):');
                    size = (size == null) ? '' : size;
                    var text = prompt('Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[size='+size+']'+text+'[/size]';
                break;

                case 'color':
                    var color = prompt('Farbe (hex / rgb):');
                    color = (color == null) ? '' : color;
                    var text = prompt('Text:');
                    text = (text == null) ? '' : text;
                    bbCode = '[color='+color+']'+text+'[/color]';
                break;

                case 'left':
                    bbCode = "\n"+'[left][/left]';
                break;

                case 'center':
                    bbCode = "\n"+'[center][/center]';
                break;

                case 'right':
                    bbCode = "\n"+'[right][/right]';
                break;

                case 'justify':
                    bbCode = "\n"+'[justify][/justify]';
                break;

            }

            $('.bbCode_edit textarea').val($('.bbCode_edit textarea').val()+bbCode);
            
        }
    };

    $('.bbCode_codes a').click(function() {
        var code = $(this).attr('class').replace('bbCode_', '');
        bbCode.insert(code);
    });

});
