0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
concrete5
/
5.6.0.2-2
/
standard
/
htdocs
/
concrete
/
blocks
/
form
/
[
Home
]
File: auto.js
var miniSurvey ={ bid:0, serviceURL: $("input[name=miniSurveyServices]").val() + '?block=form&', init: function(){ this.tabSetup(); /* for(var i=0;i<this.answerTypes.length;i++){ this.answerTypes[i].onclick=function(){miniSurvey.optionsCheck(this);miniSurvey.settingsCheck(this);} this.answerTypes[i].onchange=function(){miniSurvey.optionsCheck(this);miniSurvey.settingsCheck(this);} } for(var i=0;i<this.answerTypesEdit.length;i++){ this.answerTypesEdit[i].onclick=function(){miniSurvey.optionsCheck(this,'Edit');miniSurvey.settingsCheck(this,'Edit');} this.answerTypesEdit[i].onchange=function(){miniSurvey.optionsCheck(this,'Edit');miniSurvey.settingsCheck(this,'Edit');} } */ $("#answerType").change(function(r) { miniSurvey.optionsCheck($('#answerType').get(0)); miniSurvey.settingsCheck($('#answerType').get(0)); }); $("#answerTypeEdit").change(function(r) { miniSurvey.optionsCheck($('#answerTypeEdit').get(0), 'Edit'); miniSurvey.settingsCheck($('#answerTypeEdit').get(0), 'Edit'); }); $('#refreshButton').click( function(){ miniSurvey.refreshSurvey(); return false; } ); $('#addQuestion').click( function(){ miniSurvey.addQuestion(); return false; } ); $('#editQuestion').click( function(){ miniSurvey.addQuestion('Edit'); return false; } ); $('#cancelEditQuestion').click( function(){ $('#editQuestionForm').css('display','none') } ); this.serviceURL+='cID='+this.cID+'&arHandle='+this.arHandle+'&bID='+this.bID+'&btID='+this.btID+'&'; miniSurvey.refreshSurvey(); $('#emailSettings').hide(); }, tabSetup: function(){ $('ul#ccm-formblock-tabs li a').each( function(num,el){ el.onclick=function(){ var pane=this.id.replace('ccm-formblock-tab-',''); miniSurvey.showPane(pane); } }); }, showPane:function(pane){ $('ul#ccm-formblock-tabs li').each(function(num,el){ $(el).removeClass('active') }); $(document.getElementById('ccm-formblock-tab-'+pane).parentNode).addClass('active'); $('div.ccm-formBlockPane').each(function(num,el){ el.style.display='none'; }); $('#ccm-formBlockPane-'+pane).css('display','block'); }, refreshSurvey : function(){ $.ajax({ url: this.serviceURL+'mode=refreshSurvey&qsID='+parseInt(this.qsID)+'&hide='+miniSurvey.hideQuestions.join(','), success: function(msg){ $('#miniSurveyPreviewWrap').html(msg); } }); $.ajax({ url: this.serviceURL+'mode=refreshSurvey&qsID='+parseInt(this.qsID)+'&showEdit=1&hide='+miniSurvey.hideQuestions.join(','), success: function(msg){ $('#miniSurveyWrap').html(msg); } }); }, optionsCheck : function(radioButton,mode){ if(mode!='Edit') mode=''; if( radioButton.value=='select' || radioButton.value=='radios' || radioButton.value=='checkboxlist'){ $('#answerOptionsArea'+mode).css('display','block'); }else $('#answerOptionsArea'+mode).css('display','none'); if( radioButton.value=='email') { $('#emailSettings'+mode).show(); } else { $('#emailSettings'+mode).hide(); } }, settingsCheck : function(radioButton,mode){ if(mode!='Edit') mode=''; if( radioButton.value=='text'){ $('#answerSettings'+mode).css('display','block'); }else { $('#answerSettings'+mode).css('display','none'); } }, addQuestion : function(mode){ var msqID=0; if(mode!='Edit') { mode=''; } else { msqID=parseInt($('#msqID').val(), 10); } var formID = '#answerType'+mode; answerType = $(formID).val(); var options = encodeURIComponent($('#answerOptions'+mode).val()); var postStr='question='+encodeURIComponent($('#question'+mode).val())+'&options='+options; postStr+='&width='+escape($('#width'+mode).val()); postStr+='&height='+escape($('#height'+mode).val()); var req = $('#required'+mode+' input[value=1]').prop('checked') ? 1 : 0; postStr+='&required='+req; postStr+='&position='+escape($('#position'+mode).val()); var form=document.getElementById('ccm-block-form'); postStr+='&inputType='+answerType;//$('input[name=answerType'+mode+']:checked').val() postStr+='&msqID='+msqID+'&qsID='+parseInt(this.qsID); if(answerType == 'email') { postStr+='&send_notification_from='; postStr+= $('#send_notification_from').is(':checked') ? "1" : "0" } $.ajax({ type: "POST", data: postStr, url: this.serviceURL+'mode=addQuestion&qsID='+parseInt(this.qsID), success: function(msg){ eval('var jsonObj='+msg); if(!jsonObj){ alert(ccm_t('ajax-error')); }else if(jsonObj.noRequired){ alert(ccm_t('complete-required')); }else{ if(jsonObj.mode=='Edit'){ var questionMsg = $('#questionEditedMsg'); questionMsg.fadeIn(); setTimeout(function(){ questionMsg.fadeOut(); }, 5000); if(jsonObj.hideQID){ miniSurvey.hideQuestions.push( miniSurvey.edit_qID ); //jsonObj.hideQID); miniSurvey.edit_qID=0; } }else{ var questionMsg = $('#questionAddedMsg'); questionMsg.fadeIn(); setTimeout(function(){ questionMsg.fadeOut(); }, 5000); //miniSurvey.saveOrder(); } $('#editQuestionForm').css('display','none'); miniSurvey.qsID=jsonObj.qsID; miniSurvey.ignoreQuestionId(jsonObj.msqID); $('#qsID').val(jsonObj.qsID); miniSurvey.resetQuestion(); miniSurvey.refreshSurvey(); //miniSurvey.showPane('preview'); } } }); }, //prevent duplication of these questions, for block question versioning ignoreQuestionId:function(msqID){ var msqID, ignoreEl=$('#ccm-ignoreQuestionIDs'); if(ignoreEl.val()) msqIDs=ignoreEl.val().split(','); else msqIDs=[]; msqIDs.push( parseInt(msqID, 10) ); ignoreEl.val( msqIDs.join(',') ); }, reloadQuestion : function(qID){ $.ajax({ url: this.serviceURL+"mode=getQuestion&qsID="+parseInt(this.qsID)+'&qID='+parseInt(qID), success: function(msg){ eval('var jsonObj='+msg); $('#editQuestionForm').css('display','block') $('#questionEdit').val(jsonObj.question); $('#answerOptionsEdit').val(jsonObj.optionVals.replace(/%%/g,"\r\n") ); $('#widthEdit').val(jsonObj.width); $('#heightEdit').val(jsonObj.height); $('#positionEdit').val(jsonObj.position); if (parseInt(jsonObj.required, 10) == 1) { $('#requiredEdit input[value=1]').prop('checked', true); $('#requiredEdit input[value=0]').prop('checked', false); } else { $('#requiredEdit input[value=1]').prop('checked', false); $('#requiredEdit input[value=0]').prop('checked', true); } if(jsonObj.inputType == 'email') { var options = jsonObj.optionVals.split(";"); for (var i = 0; i < options.length; i++) { key_val = options[i].split('::'); if(key_val.length == 2) { if (key_val[0] == 'send_notification_from') { if (key_val[1] == 1) { $('.send_notification_from input').prop('checked', true); } else { $('.send_notification_from input').prop('checked', false); } } } } } $('#msqID').val(jsonObj.msqID); $('#answerTypeEdit').val(jsonObj.inputType); miniSurvey.optionsCheck($('#answerTypeEdit').get(0), 'Edit'); miniSurvey.settingsCheck($('#answerTypeEdit').get(0), 'Edit'); if(parseInt(jsonObj.bID)>0) miniSurvey.edit_qID = parseInt(qID) ; $('.miniSurveyOptions').first().closest('.ui-dialog-content').get(0).scrollTop = 0; } }); }, //prevent duplication of these questions, for block question versioning pendingDeleteQuestionId:function(msqID){ var msqID, el=$('#ccm-pendingDeleteIDs'); if(el.val()) msqIDs=ignoreEl.val().split(','); else msqIDs=[]; msqIDs.push( parseInt(msqID, 10) ); el.val( msqIDs.join(',') ); }, hideQuestions : [], deleteQuestion : function(el,msqID,qID){ if(confirm(ccm_t('delete-question'))) { $.ajax({ url: this.serviceURL+"mode=delQuestion&qsID="+parseInt(this.qsID)+'&msqID='+parseInt(msqID), success: function(msg){ miniSurvey.resetQuestion(); miniSurvey.refreshSurvey(); } }); miniSurvey.ignoreQuestionId(msqID); miniSurvey.hideQuestions.push(qID); miniSurvey.pendingDeleteQuestionId(msqID) } }, resetQuestion : function(){ $('#question').val(''); $('#answerOptions').val(''); $('#width').val('50'); $('#height').val('3'); $('#msqID').val(''); $('#answerType').val('field').change(); $('#answerOptionsArea').hide(); $('#answerSettings').hide(); $('#required input').prop('checked', false); }, validate:function(){ var failed=0; var n=$('#surveyName'); if( !n || parseInt(n.val().length, 10)==0 ){ alert(ccm_t('form-name')); this.showPane('options'); n.focus(); failed=1; } var Qs=$('.miniSurveyQuestionRow'); if( !Qs || parseInt(Qs.length, 10)<1 ){ alert(ccm_t('form-min-1')); failed=1; } if(failed){ ccm_isBlockError=1; return false; } return true; }, moveUp:function(el,thisQID){ var qIDs=this.serialize(); var previousQID=0; for(var i=0;i<qIDs.length;i++){ if(qIDs[i]==thisQID){ if(previousQID==0) break; $('#miniSurveyQuestionRow'+thisQID).after($('#miniSurveyQuestionRow'+previousQID)); break; } previousQID=qIDs[i]; } this.saveOrder(); }, moveDown:function(el,thisQID){ var qIDs=this.serialize(); var thisQIDfound=0; for(var i=0;i<qIDs.length;i++){ if(qIDs[i]==thisQID){ thisQIDfound=1; continue; } if(thisQIDfound){ $('#miniSurveyQuestionRow'+qIDs[i]).after($('#miniSurveyQuestionRow'+thisQID)); break; } } this.saveOrder(); }, serialize:function(){ var t = document.getElementById("miniSurveyPreviewTable"); var qIDs=[]; for(var i=0;i<t.childNodes.length;i++){ if( t.childNodes[i].className && t.childNodes[i].className.indexOf('miniSurveyQuestionRow')>=0 ){ var qID=t.childNodes[i].id.substr('miniSurveyQuestionRow'.length); qIDs.push(qID); } } return qIDs; }, saveOrder:function(){ var postStr='qIDs='+this.serialize().join(',')+'&qsID='+parseInt(this.qsID); $.ajax({ type: "POST", data: postStr, url: this.serviceURL+"mode=reorderQuestions", success: function(msg){ miniSurvey.refreshSurvey(); } }); } }; ccmValidateBlockForm = function() { return miniSurvey.validate(); }; $(document).ready(function(){ //miniSurvey.init(); /* TODO hackzors, this shouldnt be necessary */ $('#ccm-block-form').closest('div').addClass('ccm-ui'); });