PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 16.0-beta
Jetpack – WP Security, Backup, Speed, & Growth v16.0-beta
16.0 16.0-beta 16.0-a.7 16.0-a.5 15.9.1 16.0-a.3 16.0-a.1 15.9 15.9-beta 15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / modules / shortcodes / js / quiz.js
jetpack / modules / shortcodes / js Last commit date
brightcove.js 5 years ago dependencies.js 7 months ago main.js 7 months ago quiz.js 4 years ago recipes.js 5 years ago slideshow-shortcode.js 7 months ago
quiz.js
93 lines
1 ( function ( $ ) {
2 $.fn.shuffleQuiz = function () {
3 var allElems = this.get(),
4 getRandom = function ( max ) {
5 return Math.floor( Math.random() * max );
6 },
7 shuffled = $.map( allElems, function () {
8 var random = getRandom( allElems.length ),
9 randEl = $( allElems[ random ] ).clone( true )[ 0 ];
10 allElems.splice( random, 1 );
11 return randEl;
12 } );
13
14 this.each( function ( i ) {
15 $( this ).replaceWith( $( shuffled[ i ] ) );
16 } );
17
18 return $( shuffled );
19 };
20 } )( jQuery );
21
22 jQuery( function ( $ ) {
23 $( '.jetpack-quiz' ).each( function () {
24 var quiz = $( this );
25 quiz.find( 'div.jetpack-quiz-answer' ).shuffleQuiz();
26 quiz.find( 'div[data-correct]' ).removeAttr( 'data-correct' ).data( 'correct', 1 );
27 quiz.find( 'div.jetpack-quiz-answer:last' ).addClass( 'last' );
28 } );
29
30 $( 'div.jetpack-quiz' ).on( 'click', 'div.jetpack-quiz-answer', function () {
31 var trackid,
32 answer = $( this ),
33 quiz = answer.closest( 'div.jetpack-quiz' );
34
35 if ( quiz.data( 'a8ctraining' ) ) {
36 new Image().src =
37 '//pixel.wp.com/b.gif?v=wpcom-no-pv&x_trainingchaos-' +
38 quiz.data( 'username' ) +
39 '=' +
40 quiz.data( 'a8ctraining' ) +
41 '&rand=' +
42 Math.random();
43 quiz.data( 'a8ctraining', false );
44 quiz.data( 'trackid', false );
45 }
46
47 trackid = quiz.data( 'trackid' );
48 if ( answer.data( 'correct' ) ) {
49 answer.addClass( 'correct' );
50 if ( trackid ) {
51 new Image().src =
52 '//pixel.wp.com/b.gif?v=wpcom-no-pv&x_quiz-' + trackid + '=correct&rand=' + Math.random();
53 }
54 } else {
55 answer.addClass( 'wrong' );
56 if ( trackid ) {
57 new Image().src =
58 '//pixel.wp.com/b.gif?v=wpcom-no-pv&x_quiz-' + trackid + '=wrong&rand=' + Math.random();
59 }
60 }
61 // only track the first answer
62 quiz.data( 'trackid', false );
63 } );
64 } );
65
66 document.querySelectorAll( '.jetpack-quiz-wrapper' ).forEach( function ( quiz ) {
67 quiz.childNodes.forEach( function ( element, number ) {
68 element.style.display = 'none';
69 element.setAttribute( 'quiz-number', number );
70 element.querySelector( '.jetpack-quiz-count' ).innerHTML =
71 number + 1 + '/' + quiz.childElementCount;
72 } );
73
74 quiz.childNodes[ 0 ].style.display = 'block';
75 } );
76
77 document.querySelectorAll( '.jetpack-quiz-option-button' ).forEach( function ( element ) {
78 element.addEventListener( 'click', function () {
79 var currentQuiz = element.parentElement.parentElement;
80 currentQuiz.style.display = 'none';
81 var switchNumber = element.getAttribute( 'data-quiz-option' ) === 'next' ? 1 : -1;
82 var newQuiz =
83 currentQuiz.parentElement.childNodes[
84 parseInt( currentQuiz.getAttribute( 'quiz-number' ) ) + switchNumber
85 ];
86 newQuiz.style.display = 'block';
87 var newQuizQuestionEl = newQuiz.querySelector( '.jetpack-quiz-question' );
88 if ( newQuizQuestionEl ) {
89 newQuizQuestionEl.focus();
90 }
91 } );
92 } );
93