function QuestionLongText(){
    this.sQuestionType = 'LONG_TEXT';

    //System settings
    this.iTextAreaHeight = 100;
    this.iTextAreaPadding = 5;
    
    //Quiz settings
    this.oMaster = null;
    this.sServerSaveURL = '';
    this.bSaveParticipation = false;
    
    //User settings
    this.sBorderColor = 'gray';
    
    //Variables
    this.sQuestionText = '';
    this.sTitle = null;
    this.sImageFileName = null;
    this.oVideoInfo = null;
    this.sAudioFileName = null;
    this.oInput = null;
    this.sImgsToPreload = new Array();
    this.sCurrText = '';
    this.iQuestionID = 0;
    this.condition = new Condition();
    this.sCommentTitle = null;
    this.sCommentText = '';
    
    //Mandatory functions
    this.display = function(oParentElement,iWidthAvail){
        //Create p
        var oP = ns_buildHTMLElement('p',{style:'display:inline;'});
        oP.className = 'QuestionText';
        oP.innerHTML = this.sQuestionText;
        oParentElement.appendChild(oP);
        
        if(this.sQuestionText || this.sQuestionText.length > 0){
            oParentElement.appendChild(ns_buildHTMLElement('br',{}));
            oParentElement.appendChild(ns_buildHTMLElement('img',{src:'images/spacer.gif', width:'5', height:'19'}));
            oParentElement.appendChild(ns_buildHTMLElement('br',{}));
            oParentElement.appendChild(ns_buildHTMLElement('img',{src:'images/question_line.gif', width:iWidthAvail, height:'1'}));
            oParentElement.appendChild(ns_buildHTMLElement('br',{}));
            oParentElement.appendChild(ns_buildHTMLElement('img',{src:'images/spacer.gif', width:'5', height:'19'}));
            oParentElement.appendChild(ns_buildHTMLElement('br',{}));
        }
        
        //Create table
        //var oTextArea = document.createElement('TEXTAREA');
        //oTextArea.id = 'txt' + this.iQuestionID;
        this.oInput = ns_buildHTMLElement('textarea',{id:'txt' + this.iQuestionID});
        this.oInput.style.width = (iWidthAvail - (this.iTextAreaPadding * 2)) + 'px';
        this.oInput.style.height = (this.iTextAreaHeight - (this.iTextAreaPadding * 2)) + 'px';
        this.oInput.style.border = 'solid 1px ' + this.sBorderColor;
        this.oInput.style.padding = this.iTextAreaPadding + 'px';
        this.oInput.innerHTML = this.sCurrText;
        
        oParentElement.appendChild(this.oInput);
        oParentElement.appendChild(this.oMaster.buildCommentLayout(this));
    }
    
    this.save = function(){
        this.sCurrText = this.oInput.value;
        
        //Comment
        if(this.sCommentTitle){
            this.sCommentText = $(this.oMaster.sTxtCommentPrefix + this.iQuestionID).value;
        }
    }
    
    this.submit = function(){
        if(this.bSaveParticipation){
            this.oMaster.saveParticipation(this.iQuestionID,0,this.sCurrText);
            
            //Comment
            if(this.sCommentTitle){
                this.oMaster.saveComment(this.iQuestionID,this.sCommentText);
            }
        }
    }
    
    this.isAnswered = function() {
        if(this.sCurrText.length > 0)
            return true;
        else
            return false;
    }
    
    this.hide = function(){}
    
    this.setQuestionText = function(s){
        this.sQuestionText = s;
    }
    
    this.setTitle = function(s){
        this.sTitle = s;
    }
    this.setImage = function(s){
        this.sImageFileName = s;
        this.sImgsToPreload[this.sImgsToPreload.length] = s;
    }
    this.setLabelType = function(i){}
    this.setVideo = function(s,iWidth,iHeight){
        this.oVideoInfo = {sFileName:'',iWidth:0,iHeight:0};
        this.oVideoInfo.sFileName = s;
        this.oVideoInfo.iWidth = iWidth;
        this.oVideoInfo.iHeight = iHeight;   
    }
    this.setAudio = function(s){
        this.sAudioFileName = s;
    }
    //Question specific functions
    
}