// ==UserScript== // @name Qualtrics:Show All Questions // @description Show All Questions on Qualtrics (use in edit mode of survey) // @include https://s.qualtrics.com/ControlPanel/*Edit* // @grant none // @version 0.0.1.20140807214620 // @namespace https://greasyfork.org/users/4252 // @downloadURL none // ==/UserScript== //Note: Only been tested in firefox function OutputQuestions() { Questions = document.getElementsByClassName("QuestionText"); var output; output = ' '; output += ''; for (i = 0; i < Questions.length; i++) { if (!document.getElementById("TrashArea").contains(Questions[i])) //don't include questions in trash (section at end) { if (!isNaN(Questions[i].textContent.trim().substr(0, 1))) { //if it starts with a number then show automatically (and ignore whitespace and html) output += ""; } else //if it doesnt start with a number then hide it { output += ''; } } } output += "
" + Questions[i].innerHTML + "
"; var myWindow = window.open("", "_blank", "scrollbars=yes, menubar=yes"); var newStyle = document.createElement('style'); newStyle.innerHTML = ".hidden{ display:none;}"; myWindow.document.head.appendChild(newStyle); var newScript = document.createElement('script'); newScript.type = 'text/javascript'; newScript.innerHTML = 'function ShowHideNAN() { rule = document.styleSheets[0].cssRules[0]; if (rule.style.display == "none") rule.style.display = "inline"; else rule.style.display = "none"; }'; myWindow.document.head.appendChild(newScript); myWindow.document.body.innerHTML = output; } window.addEventListener('load', WindowLoadedOQ, false); function WindowLoadedOQ() { if (document.getElementsByClassName("EditSection")[1].classList[0] == "active") //if on edit tab { var OutputQuestionsButton = document.createElement('a'); OutputQuestionsButton.id = "OutputQuestionsButton"; document.getElementById("StatusBarLeftContainer").appendChild(OutputQuestionsButton); ReadyButton(); } } function ReadyButton() { OutputQuestionsButton = document.getElementById("OutputQuestionsButton"); OutputQuestionsButton.innerHTML = "Output Questions"; OutputQuestionsButton.className = "toggleButton"; OutputQuestionsButton.onclick = OutputQuestions; }