Qualtrics - use Hotspots to be directly forwarded to next page? - qualtrics

maybe someone can help.
In an online-survey we want to use a graphic that looks and functions similar to Tinder. The respondents should be able to click on a heart or cross (in our case not swipe) under an image and directly see the next tinder-like image.
To do so we marked the heart and cross regions as hot spots.
The images one respondent will see are all in one block.
How can we manage
that it's only possible to mark one hot spot at a time? Currently you can activate both...
that the respondents immediately see the next image, as soon as they click on one of the hot spots? Currently you have to activate a hot spot and the click the "next question" button. And
that we can count for each respondent how often he/she clicked the heart or the cross?
Cheers,
Anders

On your Hotspot questions:
Set Validation Type to:
Answers Range
At Least: 1
No More Than: 1
Add this JavaScript:
Qualtrics.SurveyEngine.addOnload(function() {
this.questionclick = function(event,element){
$('NextButton').click();
};
});
The region they clicked for each question (heart or cross) will be in your response data.

Related

How do I link between items in Qualtrics?

I have a block of 7 items in Qualtrics. Right now, I have it set up so it displays the first item to everyone, and then presents a random item from the next 5, and then presents the last item to everyone. The last item asks respondents to summarize what they read (which was one of the 5 random ones).
I want them to be able to go re-read the item in case they weren't paying close enough attention.
Some ways of doing this might be:
Include a back button (but I'd want this to be the only place where they could go back), and I don't think it'd work anyway since I have randomization.
Include a link? (e.g. "To re-read the passage click here" and then something would pop up?) I don't know if there is a way to do this.
Include the last item on the same page as the randomized ones. It automatically broke them into separate pages - is there a way to include them in the same page?
If anyone knows how to do any of these, or has another suggestion, please help :)
Put the 5 random items and the last item in the same block, then under block options choose Question Randomization. Use Advanced Randomization to show 1 of the 5 random items, and show 2 items per page.

Render events for one year displaying a date range of 40 days in ResourceTimeline

I am in the process to add FullCalendar v4 to our react application and I'm pretty new to FullCalendar, so excuse me if I ask a basic question.
I searched both the documentation and StackOverflow, but couldn't find any hints to my current problem. Let me briefly describe our goal scenario:
We want to load and render the events for a whole year and show a date range of about 40 days (a whole month and additionally 5 days from the last and the next month) to the user. The user should be able to scroll through the whole year with the scrollbar.
The first question is whether FC4 already provides the functionality with which we can achieve our goal. I tried to define a custom view of type 'resourceTimeline' with a duration of 30 days and additionally set the 'validRange' to the current year. This gives me the look I want, but unfortunately it is static - the scrollbar is not visible as long as the screen can display the whole area of 40 days. With the next/previous buttons I can switch between the 40 days segments, but I'd rather use these buttons to switch between years and use the scrollbar to scroll within the year.
We have now tried to set the 'visibleRange' to the current year and programmatically scroll to the current date in the 'datesRender' function. The problem is that we can't decide whether FC4 was initially loaded (where we would scroll to the current date) or whether a user scrolled manually to another date in the timeline and edited an event there. In this case the scroll position should be kept.
So what we are missing is the matching callback that tells us that the 'executeRender' function has been completely executed. The question at this point is how and where I can provide an application specific callback function that is triggered after all dates and events have been rendered. I also saw several internal success callbacks. Is it possible to overwrite them?
Any ideas and hints are highly appreciated.
Thank you very much for thinking along.

Hide/unhide empty rows button

I'm working on a Google Sheet for a crew to create per diems sheet for all of them. It's all automatic based on a start date.
The problem is;
My whole time period is three months. I have crew perhaps travelling only four days. Which means when I export an PDF for accounting they get a lot empty days.
I would really like to have a button to hide/unhide rows with no information in Column E. The problem is that I have no experience with scripts (as my Google search informs me i must have).
I once had a document that had this feature, but I did nok make it and it was Excel, macro I believe.
In my document I have 45 different sheets, all named from 1 to 45. If possible I could have a button for that hides rows in all sheets. If this button could be in a sheet called "Rules" that would be perfect. If no one knows a solution for this, a separate hide/unhide button for each sheet (1-45) would be perfect.
I'm asking a lot here, but hopefully someone that knows script a lot could make it a challenge to make my day.
I look forward for your replies.
In advance, thanks!

Train of thought with submit data Meteor JS

My question is very specific and not for all, I want people to help me with my train of thought.
What I want to build : for example I have service where all people (not logined) can create they post with some data like news and publish it for money.
How I think it should be built (in 2 steps):
Man click on the link to page with form that create posts and router go to this page
He fills data and click submit
Server checked form and if all OK, session.set this data that he fills and route to the next step (pay money
to publish they post)
(I want to build this with stripe so) He clicked on stripe checkout button and pay some $$, if he paid then show message, all ok, we session.get data that he fills from previous step, and on server we insert his post and go it, if not show message that something wrong
Technical Plan session.set session.get, it is right ?
And if someone slip through form with fills and go to payment page, how to check it ? If session.get === undefind or something like this, reroute to previous step ?
As you can see I have a lot of questions, and I cant find answers in google or some documentation tutorials and etc. maybe some have answers to it
Your question is very wide. Consider narrowing it.
Your 2 first points make sense. It's ok. The third and forth are wrong.
Technical Plan session.set session.get, it is right ?
No it is not. You plan to use the information you hold in a Session variable to publish data validated on client side. It does not ensure the validity of your data. This is a bad idea because anyone can open the console and edit the data to make it different/invalid regarding your rules of validation. All it takes is a Session.set ("yourData", "YouHaveBeenHacked");
What you need is to call a Meteor method on server side to add an entry to a dedicated collection. You add another field (e.g; status) to keep track of the post payment and publication and return the data entry _id that you store in a Session variable.
This way, your method can return an error if the data does not fit into your requirements.
Side note: you also need to add a CRON job serverside to get rid of all the old post tentatives that have not been paid for (user left his browser, he closed tab, etc.).

How to get the back button and session state to work together?

There may be an easy answer to this and I just don't see it b/c I am too close to the project - so be it.
I have an asp.net 2.0 search application. It is a series of pages that start with a search form and end with the results being displayed to the user. Between the search and results page is a filter page that displays a series of filters the user can filter down the search results to. I execute the initial search on the search page and store the results in the session. If the initial search results total more than a certain number (let us say 50 for the sake of the example), the user is taken to the filters page. There they are presented with a number of filters they can apply to the results.
Once the selected filters have been applied to the search results, if the count is still more than 50 they stay on the page with only the filters they have not selected still displayed on the page. If the count is less than 50, they are taken to the results page. Now if they are on the filters page but wish to see the results, there is a button that takes the current state of the results and takes the user to the results page.
Here is my problem - if I am on the results page after applying some filters and click on the back button (none of the pages cache), how can i get the previous state of the search results BEFORE whatever filters I selected had been applied? Even further, if I got to the results page after a series of say 4 "apply filters" (apply filter - still over 50, apply other filter - still over 50, apply yet another filter - still over 50, and finally apply another filter - yay! under 50 go to results page), how do I get each version of the ever shrinking search results from the session if I keep hitting the back button?
Sorry if this is a bit weird and not that easy to understand - this is one of the problems that is not simple enough to just wrap it in a few simple sentences.
I am most eager for any thoughts (pertaining to the question at hand) or questions.
UPDATE -
FYI, I did not decide on the mult-page design. A requirement stated that it follow the flow of an existing third-party search app (reverse engineering is wonderful right?).
Thanks
Not to be too critical, but what you described sounds like a seriously jacked up way of handling search.
Typically, your search criteria and results are on the same page. When you modify the criteria and click search you should just display the top 50 results and let them know there are more. This can't be any more expensive an operation that what you've described because you have to run the queries under both circumstances anyway.
Take a look at NewEgg.com and try their "advanced search" from this page. You'll notice there are about 20 different criteria factors on the left. As you add a new criteria, the bread crumb at the top of the page changes. They have a little (x) next to each in the bread crumb so you can quickly eliminate any criteria from your search results. Voila no back button needed.
Note that at no point do you need session state to handle this. At most you could use hidden form fields which would still support back button usage in the browser, if they really wanted to.
Use your current session-based parameters as is, but let any querystring-parameter override them. This way you keep your values w/o assigning them to every url, yet adjusts to any previous manual data-enrty (querystrings in the browser-history).
(And don't use POST for search.)

Resources