11import murmur from 'imurmurhash'
22import { getUserEventsId , sendEvent } from './events'
3- import h from './hyperscript'
4-
5- import { updateDisplay , submitForm } from './helpfulness'
3+ // import h from './hyperscript'
64
75const TREATMENT = 'TREATMENT'
86const CONTROL = 'CONTROL'
@@ -29,79 +27,4 @@ export default function () {
2927 // const x = document.querySelector(...)
3028 // x.addEventListener('click', () => { sendSuccess(testName) })
3129 // if (xbucket === TREATMENT) applyTreatment(x)
32-
33- const testName = 'survey-stars'
34- const xbucket = bucket ( testName )
35-
36- const form = document . querySelector ( '.js-helpfulness' )
37- if ( ! form ) return
38-
39- // Overwrites the default handler for helpfulness survey...
40- form . addEventListener ( 'submit' , evt => {
41- evt . preventDefault ( )
42- sendSuccess ( testName )
43- submitForm ( form )
44- updateDisplay ( form , 'end' )
45- } )
46-
47- if ( xbucket === TREATMENT ) applyTreatment ( form )
48- }
49-
50- function applyTreatment ( form ) {
51- const p = form . querySelector ( '.radio-group' )
52- p . innerHTML = ''
53-
54- const buttons = [ 1 , 2 , 3 , 4 , 5 ] . map ( i =>
55- h (
56- 'button' ,
57- {
58- 'data-value' : i ,
59- 'aria-label' : i ,
60- class : 'btn-link tooltipped tooltipped-n'
61- } ,
62- h (
63- 'span' ,
64- {
65- class : 'star-empty f3'
66- } ,
67- '☆'
68- ) ,
69- h (
70- 'span' ,
71- {
72- class : 'star-full f3' ,
73- hidden : true
74- } ,
75- '★'
76- )
77- )
78- )
79- const input = h ( 'input' , {
80- name : 'helpfulness-vote' ,
81- type : 'hidden'
82- } )
83- buttons . forEach ( btn => p . appendChild ( btn ) )
84- p . appendChild ( input )
85-
86- buttons . forEach ( ( btn , i ) => {
87- btn . addEventListener ( 'click' , evt => {
88- evt . preventDefault ( )
89- updateBtnDisplay ( i )
90- submitForm ( form )
91- updateDisplay ( form , i > 2 ? 'yes' : 'no' )
92- } )
93- } )
94-
95- function updateBtnDisplay ( i ) {
96- buttons . forEach ( ( xbtn , xi ) => {
97- if ( xi <= i ) {
98- xbtn . querySelector ( '.star-full' ) . removeAttribute ( 'hidden' )
99- xbtn . querySelector ( '.star-empty' ) . setAttribute ( 'hidden' , true )
100- } else {
101- xbtn . querySelector ( '.star-full' ) . setAttribute ( 'hidden' , true )
102- xbtn . querySelector ( '.star-empty' ) . removeAttribute ( 'hidden' )
103- }
104- } )
105- input . setAttribute ( 'value' , i > 2 ? 'Yes' : 'No' )
106- }
10730}
0 commit comments