app.include(BF_SCRIPTDIR+'xmlrpc.js');
app.include(BF_SCRIPTDIR+'utils/slider.js');

if (!app.feedback) {

    MM_preloadImages(MOD_CONTENT_IMAGES_DIR+'feedback/feedback1.png',MOD_CONTENT_IMAGES_DIR+'feedback/results1.png',MOD_CONTENT_IMAGES_DIR+'feedback/download1.png');
    
    // --------------------------------------------------------

    app.feedback = {};
    app.feedback.submit = function(el, id, result, btn, ctx) {
                
        var out = app.xmlrpc.Call(BF_WS_URL, BF_KEY, id+'.UpdateResult', [result], ctx, false, null);
        if (!app.xmlrpc.fault(out, true)) {
            if (el.getAttribute('_anonymous')=="1" || el.getAttribute('_resubmit')!="1")
            { btn.disabled = true; }
            alert(el.getAttribute('_message'));
        }
    };

    // --------------------------------------------------------

    app.textfeedback = {};
    app.textfeedback.submit = function(el, field, btn, id, ctx) {
        var result = field.value.trim();
        if (result.length > 0) {
            app.feedback.submit(el, id, result, btn, ctx);
        }
    };

    // --------------------------------------------------------

    app.mcfeedback = {};
    app.mcfeedback.submit = function(div_id, btn, id, ctx) {
        var _frm = document.forms[div_id+'_form'];
        var _opts = document.getElementsByName(div_id+'_choice');
        var result = null;
        for (var i=0;i<_opts.length;++i) {
            if (_opts[i].checked) {
                result = _opts[i].value;
                break;
            }
        }
        if (result !== null) {
            app.feedback.submit(app.el(div_id), id, result, btn, ctx);
        }
        return false;
    };

    // --------------------------------------------------------

    app.sliderfeedback = {};
    app.sliderfeedback.submit = function(el, field, btn, id, ctx) {
        app.feedback.submit(el, id, field._slider.xPercent, btn, ctx);
    };

    app.sliderfeedback.init = function(el, w, h) {
        el._slider = app.ui.createslider(el,100,20,BF_IMAGEDIR+"slider/bg.gif",BF_IMAGEDIR+"slider/small_slider.gif",8,15);
        el._slider.bgImage.setSize(w,4);
        el._slider.bgImage.moveTo(0,9);
        el._slider.setRange(0,4,w-8,4);
        el._slider.setPos(el.getAttribute("_answer"),0);
    };

}