Sidekick - Version 1.3.4

Version Description

  • Updated Modal UI
  • Dropped www. from domain checking
  • Walkthroughs now pause when user double clicks on another element
  • Paid Walkthroughs now show in the free library
  • Fixed a bug where capabilities have spaces
Download this release

Release Info

Developer raptor235
Plugin Icon 128x128 Sidekick
Version 1.3.4
Comparing to
See all releases

Code changes from version 1.3.3 to 1.3.4

css/sidekick_wordpress.css CHANGED
@@ -38,7 +38,7 @@ div.sk_hotspot {
38
  height: 25px;
39
  position: absolute;
40
  cursor: pointer;
41
- background: url('../images/sprides_v12.png') -3px -796px;
42
  opacity: 0.0;
43
  margin-left: -20px;
44
  margin-top: -10px;
@@ -141,7 +141,10 @@ div#sidekick.open {
141
  transition: all 0.5s ease-out;
142
  }
143
  div#sidekick.open div#sk_taskbar button.sk_toggle {
144
- background: url('../images/sprides_v12.png') -6px -394px;
 
 
 
145
  }
146
  div#sidekick.open div#sk_taskbar div.sk_controls {
147
  display: block;
@@ -186,8 +189,14 @@ div#sidekick.playing div#sk_taskbar div.sk_info div.sk_title {
186
  opacity: 1;
187
  display: block;
188
  }
 
 
 
189
  div#sidekick.playing div#sk_taskbar button.sk_toggle {
190
- background: url('../images/sprides_v12.png') -6px -394px;
 
 
 
191
  }
192
  div#sidekick.playing div#sk_taskbar div.sk_toggles {
193
  display: block;
@@ -210,6 +219,86 @@ div#sidekick button {
210
  cursor: hand;
211
  padding: 0px;
212
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
213
  div#sidekick div#sk_taskbar {
214
  width: 100%;
215
  height: 100%;
@@ -240,12 +329,18 @@ div#sidekick div#sk_taskbar button {
240
  min-width: 26px;
241
  float: left;
242
  }
 
 
 
 
 
 
243
  div#sidekick div#sk_taskbar div#logo {
244
  float: left;
245
  height: 100%;
246
  width: 125px;
247
  /*width: 124px; wp 3.8+ */
248
- background: url('../images/sprides_v12.png') 5px 0px no-repeat;
249
  cursor: pointer;
250
  }
251
  div#sidekick div#sk_taskbar button.sk_toggle {
@@ -253,7 +348,7 @@ div#sidekick div#sk_taskbar button.sk_toggle {
253
  height: 100%;
254
  width: 32px;
255
  margin-left: 3px;
256
- background: url('../images/sprides_v12.png') 0px -358px;
257
  border: none;
258
  }
259
  div#sidekick div#sk_taskbar div.sk_debug {
@@ -341,29 +436,29 @@ div#sidekick div#sk_taskbar div.sk_controls button {
341
  }
342
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_restart {
343
  left: 0px;
344
- background: url('../images/sprides_v12.png') 17px -140px;
345
  }
346
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_restart:hover {
347
- background: #d9763b url('../images/sprides_v12.png') 17px -140px;
348
  }
349
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause {
350
- background: url('../images/sprides_v12.png') 17px -178px;
351
  left: 70px;
352
  border-right: solid 1px white;
353
  border-left: solid 1px white;
354
  }
355
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause.playing {
356
- background: url('../images/sprides_v12.png') 17px -718px;
357
  }
358
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause:hover {
359
- background: #d9763b url('../images/sprides_v12.png') 17px -178px;
360
  }
361
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_stop {
362
- background: url('../images/sprides_v12.png') 17px -210px;
363
  left: 140px;
364
  }
365
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_stop:hover {
366
- background: #d9763b url('../images/sprides_v12.png') 17px -210px;
367
  }
368
  div#sidekick div#sk_taskbar div.sk_caption {
369
  position: absolute;
@@ -453,16 +548,16 @@ div#sidekick div#sk_taskbar div.sk_toggles button {
453
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots {
454
  /*display: none;*/
455
  border-left: solid 1px white;
456
- background: #f1631d url('../images/sprides_v12.png') 10px -248px;
457
  padding-left: 24px;
458
  font-size: 18px;
459
  color: white;
460
  }
461
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots.on {
462
- background: #fa8c00 url('../images/sprides_v12.png') 10px -248px;
463
  }
464
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots:hover {
465
- background: #fa8c00 url('../images/sprides_v12.png') 10px -248px;
466
  transform: translate3d(0, 0, 0);
467
  -webkit-transition: all 0.3s ease-out;
468
  -moz-transition: all 0.3s ease-out;
@@ -474,13 +569,13 @@ div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots:hover {
474
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
475
  }
476
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_feedback {
477
- background: #f1631d url('../images/sprides_v12.png') 17px -287px;
478
  /*border-right: solid 1px white;*/
479
  border-left: solid 1px white;
480
  width: 74px;
481
  }
482
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_feedback:hover {
483
- background: #fa8c00 url('../images/sprides_v12.png') 17px -287px;
484
  transform: translate3d(0, 0, 0);
485
  -webkit-transition: all 0.3s ease-out;
486
  -moz-transition: all 0.3s ease-out;
@@ -492,13 +587,13 @@ div#sidekick div#sk_taskbar div.sk_toggles button#toggle_feedback:hover {
492
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
493
  }
494
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_preferences {
495
- background: #f1631d url('../images/sprides_v12.png') 17px -33px;
496
  border-right: solid 1px white;
497
  border-left: solid 1px white;
498
  width: 74px;
499
  }
500
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_preferences:hover {
501
- background: #fa8c00 url('../images/sprides_v12.png') 17px -33px;
502
  transform: translate3d(0, 0, 0);
503
  -webkit-transition: all 0.3s ease-out;
504
  -moz-transition: all 0.3s ease-out;
@@ -510,11 +605,11 @@ div#sidekick div#sk_taskbar div.sk_toggles button#toggle_preferences:hover {
510
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
511
  }
512
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_drawer {
513
- background: #f1631d url('../images/sprides_v12.png') 17px -431px;
514
  position: relative;
515
  }
516
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_drawer:hover {
517
- background: #fa8c00 url('../images/sprides_v12.png') 17px -431px;
518
  transform: translate3d(0, 0, 0);
519
  -webkit-transition: all 0.3s ease-out;
520
  -moz-transition: all 0.3s ease-out;
@@ -534,7 +629,7 @@ div#sidekick div#sk_taskbar div.sk_toggles button#toggle_drawer.on i {
534
  top: -10px;
535
  width: 20px;
536
  height: 20px;
537
- background: url('../images/sprides_v12.png') -9px -696px;
538
  }
539
  div#sidekick #sk_drawer {
540
  background-color: #fff;
@@ -556,7 +651,7 @@ div#sidekick #sk_drawer h2 {
556
  margin: 0px;
557
  }
558
  div#sidekick #sk_drawer h2 button {
559
- background: url('../images/sprides_v12.png') -8px -656px no-repeat;
560
  width: 20px;
561
  height: 20px;
562
  border: none;
@@ -593,6 +688,17 @@ div#sidekick #sk_drawer ul.sk_bucketContainer .heading.goprev span {
593
  div#sidekick #sk_drawer ul.sk_bucketContainer .heading.goprev i {
594
  left: 6px;
595
  }
 
 
 
 
 
 
 
 
 
 
 
596
  div#sidekick #sk_drawer ul.sk_bucketContainer ul li {
597
  padding: 0px;
598
  }
@@ -763,10 +869,10 @@ div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits
763
  }
764
  div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li {
765
  padding-top: 10px;
766
- padding-left: 70px;
767
  color: #535a5a;
768
  min-height: 70px;
769
- width: 224px;
770
  }
771
  div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li h4 {
772
  color: black;
@@ -777,11 +883,17 @@ div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits
777
  padding: 0px;
778
  margin: 0px;
779
  }
780
- div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li#more {
781
- background: #f6f6f6 url('../images/sprides_v12.png') -294px -107px;
 
 
 
 
 
 
782
  }
783
- div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li#types {
784
- background: #f6f6f6 url('../images/sprides_v12.png') -294px -177px;
785
  }
786
  div#sidekick #sk_drawer ul.sk_bucketContainer input[type='text'],
787
  div#sidekick #sk_drawer ul.sk_bucketContainer input[type='password'] {
@@ -905,9 +1017,13 @@ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs {
905
  /*-o-transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, -o-transform 0.3s ease-out;*/
906
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
907
  }
 
 
 
908
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs li.sub_heading {
909
  border-bottom: solid 1px #17909b;
910
  margin-bottom: 10px;
 
911
  }
912
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs li.sub_heading span {
913
  display: inline;
@@ -922,6 +1038,21 @@ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs li.sub_heading span
922
  text-transform: uppercase;
923
  height: 20px;
924
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
925
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .overview {
926
  /*font-weight: bold;*/
927
  /*position: relative;*/
38
  height: 25px;
39
  position: absolute;
40
  cursor: pointer;
41
+ background: url('../images/sprides_v13.png') -3px -796px;
42
  opacity: 0.0;
43
  margin-left: -20px;
44
  margin-top: -10px;
141
  transition: all 0.5s ease-out;
142
  }
143
  div#sidekick.open div#sk_taskbar button.sk_toggle {
144
+ background: url('../images/sprides_v13.png') -1px -359px;
145
+ transform: rotate(180deg);
146
+ -ms-transform: rotate(180deg);
147
+ -webkit-transform: rotate(180deg);
148
  }
149
  div#sidekick.open div#sk_taskbar div.sk_controls {
150
  display: block;
189
  opacity: 1;
190
  display: block;
191
  }
192
+ div#sidekick.playing div#sk_taskbar div.sk_info .sk_divider {
193
+ float: left;
194
+ }
195
  div#sidekick.playing div#sk_taskbar button.sk_toggle {
196
+ background: url('../images/sprides_v13.png') -1px -359px;
197
+ transform: rotate(0deg);
198
+ -ms-transform: rotate(0deg);
199
+ -webkit-transform: rotate(0deg);
200
  }
201
  div#sidekick.playing div#sk_taskbar div.sk_toggles {
202
  display: block;
219
  cursor: hand;
220
  padding: 0px;
221
  }
222
+ div#sidekick #click_warning {
223
+ width: 50%;
224
+ min-width: 880px;
225
+ background-color: #a34316;
226
+ color: white;
227
+ position: absolute;
228
+ top: 100px;
229
+ min-height: 45px;
230
+ text-align: center;
231
+ z-index: 1000002;
232
+ left: 50%;
233
+ margin-left: -440px;
234
+ /*padding: 20px 5px;*/
235
+ /*border: solid 2px red;*/
236
+ font-weight: bold;
237
+ font-size: 18px;
238
+ /*.animate;*/
239
+ }
240
+ div#sidekick #click_warning.show {
241
+ top: -60px;
242
+ /*.animate;*/
243
+ -webkit-animation: warning 1s 1 ease-in-out;
244
+ -moz-animation: warning 1s 1 ease-in-out;
245
+ -o-animation: warning 1s 1 ease-in-out;
246
+ }
247
+ @-webkit-keyframes warning {
248
+ 0% {
249
+ -webkit-transform: translateY(100px);
250
+ }
251
+ 30% {
252
+ -webkit-transform: translateY(10px);
253
+ }
254
+ 60% {
255
+ -webkit-transform: translateY(50px);
256
+ }
257
+ 100% {
258
+ -webkit-transform: translateY(0px);
259
+ }
260
+ }
261
+ @-moz-keyframes warning {
262
+ 0% {
263
+ -moz-transform: translateY(100px);
264
+ }
265
+ 30% {
266
+ -moz-transform: translateY(-30px);
267
+ }
268
+ 60% {
269
+ -moz-transform: translateY(-20px);
270
+ }
271
+ 100% {
272
+ -moz-transform: translateY(-60px);
273
+ }
274
+ }
275
+ @-o-keyframes warning {
276
+ 0% {
277
+ -o-transform: translateY(100px);
278
+ }
279
+ 30% {
280
+ -o-transform: translateY(-30px);
281
+ }
282
+ 60% {
283
+ -o-transform: translateY(-20px);
284
+ }
285
+ 100% {
286
+ -o-transform: translateY(-60px);
287
+ }
288
+ }
289
+ div#sidekick #click_warning h3 {
290
+ background-color: #833512;
291
+ margin: 0px;
292
+ font-size: 1px;
293
+ text-align: left;
294
+ color: white;
295
+ padding: 1px 5px;
296
+ min-height: 5px;
297
+ }
298
+ div#sidekick #click_warning span {
299
+ padding: 15px 5px 20px;
300
+ display: block;
301
+ }
302
  div#sidekick div#sk_taskbar {
303
  width: 100%;
304
  height: 100%;
329
  min-width: 26px;
330
  float: left;
331
  }
332
+ div#sidekick div#sk_taskbar div.sk_powered_by {
333
+ float: right;
334
+ color: white;
335
+ font-size: 12px;
336
+ padding: 12px;
337
+ }
338
  div#sidekick div#sk_taskbar div#logo {
339
  float: left;
340
  height: 100%;
341
  width: 125px;
342
  /*width: 124px; wp 3.8+ */
343
+ background: url('../images/sprides_v13.png') 5px 0px no-repeat;
344
  cursor: pointer;
345
  }
346
  div#sidekick div#sk_taskbar button.sk_toggle {
348
  height: 100%;
349
  width: 32px;
350
  margin-left: 3px;
351
+ background: url('../images/sprides_v13.png') 0px -358px;
352
  border: none;
353
  }
354
  div#sidekick div#sk_taskbar div.sk_debug {
436
  }
437
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_restart {
438
  left: 0px;
439
+ background: url('../images/sprides_v13.png') 17px -140px;
440
  }
441
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_restart:hover {
442
+ background: #d9763b url('../images/sprides_v13.png') 17px -140px;
443
  }
444
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause {
445
+ background: url('../images/sprides_v13.png') 17px -178px;
446
  left: 70px;
447
  border-right: solid 1px white;
448
  border-left: solid 1px white;
449
  }
450
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause.playing {
451
+ background: url('../images/sprides_v13.png') 17px -718px;
452
  }
453
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_play_pause:hover {
454
+ background: #d9763b url('../images/sprides_v13.png') 17px -178px;
455
  }
456
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_stop {
457
+ background: url('../images/sprides_v13.png') 17px -210px;
458
  left: 140px;
459
  }
460
  div#sidekick div#sk_taskbar div.sk_controls button.sidekick_stop:hover {
461
+ background: #d9763b url('../images/sprides_v13.png') 17px -210px;
462
  }
463
  div#sidekick div#sk_taskbar div.sk_caption {
464
  position: absolute;
548
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots {
549
  /*display: none;*/
550
  border-left: solid 1px white;
551
+ background: #f1631d url('../images/sprides_v13.png') 10px -248px;
552
  padding-left: 24px;
553
  font-size: 18px;
554
  color: white;
555
  }
556
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots.on {
557
+ background: #fa8c00 url('../images/sprides_v13.png') 10px -248px;
558
  }
559
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_hotspots:hover {
560
+ background: #fa8c00 url('../images/sprides_v13.png') 10px -248px;
561
  transform: translate3d(0, 0, 0);
562
  -webkit-transition: all 0.3s ease-out;
563
  -moz-transition: all 0.3s ease-out;
569
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
570
  }
571
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_feedback {
572
+ background: #f1631d url('../images/sprides_v13.png') 17px -287px;
573
  /*border-right: solid 1px white;*/
574
  border-left: solid 1px white;
575
  width: 74px;
576
  }
577
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_feedback:hover {
578
+ background: #fa8c00 url('../images/sprides_v13.png') 17px -287px;
579
  transform: translate3d(0, 0, 0);
580
  -webkit-transition: all 0.3s ease-out;
581
  -moz-transition: all 0.3s ease-out;
587
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
588
  }
589
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_preferences {
590
+ background: #f1631d url('../images/sprides_v13.png') 17px -33px;
591
  border-right: solid 1px white;
592
  border-left: solid 1px white;
593
  width: 74px;
594
  }
595
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_preferences:hover {
596
+ background: #fa8c00 url('../images/sprides_v13.png') 17px -33px;
597
  transform: translate3d(0, 0, 0);
598
  -webkit-transition: all 0.3s ease-out;
599
  -moz-transition: all 0.3s ease-out;
605
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
606
  }
607
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_drawer {
608
+ background: #f1631d url('../images/sprides_v13.png') 17px -431px;
609
  position: relative;
610
  }
611
  div#sidekick div#sk_taskbar div.sk_toggles button#toggle_drawer:hover {
612
+ background: #fa8c00 url('../images/sprides_v13.png') 17px -431px;
613
  transform: translate3d(0, 0, 0);
614
  -webkit-transition: all 0.3s ease-out;
615
  -moz-transition: all 0.3s ease-out;
629
  top: -10px;
630
  width: 20px;
631
  height: 20px;
632
+ background: url('../images/sprides_v13.png') -9px -696px;
633
  }
634
  div#sidekick #sk_drawer {
635
  background-color: #fff;
651
  margin: 0px;
652
  }
653
  div#sidekick #sk_drawer h2 button {
654
+ background: url('../images/sprides_v13.png') -8px -656px no-repeat;
655
  width: 20px;
656
  height: 20px;
657
  border: none;
688
  div#sidekick #sk_drawer ul.sk_bucketContainer .heading.goprev i {
689
  left: 6px;
690
  }
691
+ div#sidekick #sk_drawer ul.sk_bucketContainer li.related_walkthroughs_heading.heading {
692
+ text-align: center;
693
+ cursor: default;
694
+ border-bottom-color: transparent;
695
+ }
696
+ div#sidekick #sk_drawer ul.sk_bucketContainer li.related_walkthroughs_heading.heading:hover {
697
+ background-color: #ebebeb;
698
+ }
699
+ div#sidekick #sk_drawer ul.sk_bucketContainer li.related_walkthroughs_heading.heading span {
700
+ font-weight: bold;
701
+ }
702
  div#sidekick #sk_drawer ul.sk_bucketContainer ul li {
703
  padding: 0px;
704
  }
869
  }
870
  div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li {
871
  padding-top: 10px;
872
+ /*padding-left: 70px;*/
873
  color: #535a5a;
874
  min-height: 70px;
875
+ width: 100%;
876
  }
877
  div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li h4 {
878
  color: black;
883
  padding: 0px;
884
  margin: 0px;
885
  }
886
+ div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li i {
887
+ width: 70px;
888
+ height: 70px;
889
+ display: block;
890
+ float: left;
891
+ }
892
+ div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li#more i {
893
+ background: #f6f6f6 url('../images/sprides_v13.png') -431px -22px;
894
  }
895
+ div#sidekick #sk_drawer ul.sk_bucketContainer ul.activate div#content #benefits ul li#types i {
896
+ background: #f6f6f6 url('../images/sprides_v13.png') -494px -22px;
897
  }
898
  div#sidekick #sk_drawer ul.sk_bucketContainer input[type='text'],
899
  div#sidekick #sk_drawer ul.sk_bucketContainer input[type='password'] {
1017
  /*-o-transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, -o-transform 0.3s ease-out;*/
1018
  /*transition: width 0.3s ease-out, max-height 0.3s ease-out, background-color 0.3s ease-out, transform 0.3s ease-out;*/
1019
  }
1020
+ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs ul.current_page_walkthroughs {
1021
+ left: 0px;
1022
+ }
1023
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs li.sub_heading {
1024
  border-bottom: solid 1px #17909b;
1025
  margin-bottom: 10px;
1026
+ cursor: default;
1027
  }
1028
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs li.sub_heading span {
1029
  display: inline;
1038
  text-transform: uppercase;
1039
  height: 20px;
1040
  }
1041
+ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .walkthrough a li {
1042
+ background: url('../images/sprides_v13.png') 257px -861px;
1043
+ }
1044
+ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .walkthrough a li span {
1045
+ margin: 0;
1046
+ padding: 0;
1047
+ font-size: 14px;
1048
+ color: #988c8f;
1049
+ }
1050
+ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .walkthrough a li.subscribed {
1051
+ background: none;
1052
+ }
1053
+ div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .walkthrough a li.subscribed span {
1054
+ color: #3e3e3e;
1055
+ }
1056
  div#sidekick #sk_drawer ul.sk_bucketContainer .walkthroughs .overview {
1057
  /*font-weight: bold;*/
1058
  /*position: relative;*/
images/sprides_v12.png CHANGED
Binary file
images/sprides_v13.png ADDED
Binary file
js/sk.source.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! sidekick - v1.3.3 - 2014-05-08 */(function(jQuery, window){
2
 
3
  jQuery.fn.center = function () {
4
  this.css("position","absolute");
@@ -1391,36 +1391,39 @@ Licensed under the freeBSD license
1391
  * to offer multiple easing options
1392
  *
1393
  * TERMS OF USE - jQuery Easing
1394
- *
1395
- * Open source under the BSD License.
1396
- *
1397
  * Copyright © 2008 George McGinley Smith
1398
  * All rights reserved.
1399
- *
1400
- * Redistribution and use in source and binary forms, with or without modification,
1401
  * are permitted provided that the following conditions are met:
1402
- *
1403
- * Redistributions of source code must retain the above copyright notice, this list of
1404
  * conditions and the following disclaimer.
1405
- * Redistributions in binary form must reproduce the above copyright notice, this list
1406
- * of conditions and the following disclaimer in the documentation and/or other materials
1407
  * provided with the distribution.
1408
- *
1409
- * Neither the name of the author nor the names of contributors may be used to endorse
1410
  * or promote products derived from this software without specific prior written permission.
1411
- *
1412
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
1413
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1414
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1415
  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1416
  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1417
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
1418
  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1419
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
1420
- * OF THE POSSIBILITY OF SUCH DAMAGE.
1421
  *
1422
  */
1423
 
 
 
 
1424
  // t: current time, b: begInnIng value, c: change In value, d: duration
1425
  jQuery.easing['jswing'] = jQuery.easing['swing'];
1426
 
@@ -1533,7 +1536,7 @@ jQuery.extend( jQuery.easing,
1533
  return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
1534
  },
1535
  easeInOutBack: function (x, t, b, c, d, s) {
1536
- if (s == undefined) s = 1.70158;
1537
  if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
1538
  return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
1539
  },
@@ -1560,35 +1563,37 @@ jQuery.extend( jQuery.easing,
1560
  /*
1561
  *
1562
  * TERMS OF USE - EASING EQUATIONS
1563
- *
1564
- * Open source under the BSD License.
1565
- *
1566
  * Copyright © 2001 Robert Penner
1567
  * All rights reserved.
1568
- *
1569
- * Redistribution and use in source and binary forms, with or without modification,
1570
  * are permitted provided that the following conditions are met:
1571
- *
1572
- * Redistributions of source code must retain the above copyright notice, this list of
1573
  * conditions and the following disclaimer.
1574
- * Redistributions in binary form must reproduce the above copyright notice, this list
1575
- * of conditions and the following disclaimer in the documentation and/or other materials
1576
  * provided with the distribution.
1577
- *
1578
- * Neither the name of the author nor the names of contributors may be used to endorse
1579
  * or promote products derived from this software without specific prior written permission.
1580
- *
1581
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
1582
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1583
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1584
  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1585
  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1586
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
1587
  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1588
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
1589
- * OF THE POSSIBILITY OF SUCH DAMAGE.
1590
  *
1591
- */;/*
 
 
1592
  * $ lightbox_me
1593
  * By: Buck Wilson
1594
  * Version : 2.3
@@ -1867,21 +1872,22 @@ jQuery.extend( jQuery.easing,
1867
 
1868
  SidekickWP.Models.App = Backbone.Model.extend({
1869
  defaults: {
1870
- full_library: null,
1871
- buckets: [],
1872
- passed_walkthroughs: [],
1873
- library_filtered_hotspots: [],
1874
- paid_library: null,
1875
- my_library: null,
1876
- wp_version: null,
1877
- installed_plugins: null,
1878
- current_url: null,
1879
- current_plugin: null,
1880
- license_status: null,
1881
- show_toggle_feedback: true,
1882
- sk_debug: null,
1883
- qa_mode: false,
1884
- bucket_counts: []
 
1885
  },
1886
 
1887
  initialize: function(){
@@ -1943,17 +1949,22 @@ jQuery.extend( jQuery.easing,
1943
  if(typeof sk_paid_library !== 'undefined' && _.size(sk_paid_library.buckets) > 0){
1944
  console.groupCollapsed('%cFOUND sk_paid_library %o', 'background-color: #51fa3d; color black;',sk_paid_library);
1945
 
1946
-
1947
  var paid_library_domain = sk_paid_library.domain_name;
 
1948
 
1949
  if (paid_library_domain.indexOf(',') > -1) {
1950
  var paid_library_domains = paid_library_domain.split(',');
1951
  _.each(paid_library_domains,function(item){
1952
- if (sk_config.site_url == item.trim()) {
1953
- matched_domain = item;
1954
- console.log('%cMATCHED DOMAIN %o == %o', 'background-color: #51fa3d;color: black',sk_config.site_url,item);
1955
- } else {
1956
- console.log('%cCHECK DOMAIN %o == %o', 'background-color: #c12029;color: white',sk_config.site_url,item);
 
 
 
 
1957
  }
1958
  });
1959
  } else {
@@ -1972,7 +1983,7 @@ jQuery.extend( jQuery.easing,
1972
  }
1973
  }
1974
 
1975
- if (matched_domain) {
1976
  this.set('full_library',sk_paid_library);
1977
  this.set('paid_library',sk_paid_library);
1978
  console.info('%cPaid Library for %s -> ' + sk_config.library_paid_file + ' (%o)', 'background-color: #51fa3d; color black;',matched_domain,sk_paid_library);
@@ -2036,12 +2047,21 @@ jQuery.extend( jQuery.easing,
2036
  this.filter_sub_bucket_recursive(item);
2037
  },this);
2038
 
 
 
 
2039
  _.each(library.buckets,function(item,key){
2040
  // Delete root bucket if no sub buckets
2041
  this.check_delete_empty_sub_buckets_recrusive(item);
2042
 
 
 
 
 
 
 
2043
  if (_.size(library.buckets[key].sub_buckets) === 0 && _.size(library.buckets[key].walkthroughs) === 0) {
2044
- // console.log('%cDELETE ROOT BUCKET -> %o(%o)','color: red',key,library.buckets[key]);
2045
  delete(library.buckets[key]);
2046
  }
2047
  },this);
@@ -2049,22 +2069,29 @@ jQuery.extend( jQuery.easing,
2049
  },
2050
 
2051
  check_delete_empty_sub_buckets_recrusive: function(sub_bucket){
2052
- // console.group('%ccheck_delete_empty_sub_buckets_recrusive %o (%o)', 'color: #d2984c;',sub_bucket.post_title,sub_bucket);
2053
 
2054
  if (_.size(sub_bucket.sub_buckets) > 0) {
2055
  _.each(sub_bucket.sub_buckets,function(item,key){
2056
  if (!this.check_delete_empty_sub_buckets_recrusive(item)) {
2057
- // console.error('DELETE key %o', key);
2058
  delete(sub_bucket.sub_buckets[key]);
2059
  }
2060
  },this);
2061
- // console.groupEnd();
2062
- return true;
 
 
 
 
 
 
 
2063
  } else if (_.size(sub_bucket.sub_buckets) === 0 && _.size(sub_bucket.walkthroughs) === 0 ){
2064
- // console.groupEnd();
2065
  return false;
2066
  }
2067
- // console.groupEnd();
2068
  return true;
2069
  },
2070
 
@@ -2156,7 +2183,9 @@ jQuery.extend( jQuery.easing,
2156
 
2157
  // Checking Plugin Compatibility
2158
  if (typeof walkthrough.plugin !== 'undefined') {
2159
- if (typeof sk_config.installed_plugins === 'undefined') return false;
 
 
2160
  pass_plugin = _.find(sk_config.installed_plugins,function(plugin_data){
2161
  for (var plugin in plugin_data) {
2162
  var version = plugin_data[plugin];
@@ -2164,6 +2193,11 @@ jQuery.extend( jQuery.easing,
2164
  if (plugin == walkthrough.plugin || _.escape(plugin) == walkthrough.plugin) {
2165
  pass_plugin = true;
2166
 
 
 
 
 
 
2167
  pass_plugin_version = _.find(walkthrough.plugin_version,function(version2){
2168
  if (version == version2) {
2169
  pass_plugin_version = true;
@@ -2177,11 +2211,15 @@ jQuery.extend( jQuery.easing,
2177
  });
2178
 
2179
  if (!pass_plugin) {
2180
- console.log('%cFAILED %s (%o) - PLUGIN %s (%o)','color: red',walkthrough.title, walkthrough, walkthrough.plugin, sk_config.installed_plugins);
2181
  return false;
2182
  }
 
 
 
 
2183
  if (!pass_plugin_version){
2184
- console.log('%cFAILED %s (%o) - PLUGIN %s VER %s (%o)','color: red',walkthrough.title, walkthrough, walkthrough.plugin, walkthrough.plugin_version, sk_config.installed_plugins);
2185
  return false;
2186
  }
2187
  }
@@ -2203,6 +2241,8 @@ jQuery.extend( jQuery.easing,
2203
  return false;
2204
  }
2205
 
 
 
2206
  // Check display rules
2207
  if (walkthrough.display_rules) {
2208
  console.log('walkthrough.display_rules %o', walkthrough.display_rules);
@@ -2261,6 +2301,20 @@ jQuery.extend( jQuery.easing,
2261
  console.groupEnd();
2262
  return false;
2263
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2264
  }
2265
  console.group('%cPASSED Custom Rule %s %s %s','color: #3ab00b',rule_data.variable, sk_config[rule_data.variable], rule_data.operator.toLowerCase(), rule_data.value);
2266
  console.log('sk_config[rule_data.variable] %o', sk_config[rule_data.variable]);
@@ -2274,6 +2328,16 @@ jQuery.extend( jQuery.easing,
2274
  passed_walkthroughs.push(walkthrough.id);
2275
  this.set('passed_walkthroughs',passed_walkthroughs);
2276
 
 
 
 
 
 
 
 
 
 
 
2277
  if (walkthrough.plugin) {
2278
  console.log('%cPASSED %s', 'color: #3ab00b',walkthrough.plugin + ': ' + walkthrough.title + '(' + walkthrough.id + ')');
2279
  } else {
@@ -2336,7 +2400,8 @@ jQuery.extend( jQuery.easing,
2336
 
2337
  SidekickWP.Models.Bucket = Backbone.Model.extend({
2338
  defaults: {
2339
- full_library: null
 
2340
  },
2341
 
2342
  initialize: function(){
@@ -2515,24 +2580,23 @@ jQuery.extend( jQuery.easing,
2515
  SidekickWP.Events.on('window_resize', this.check_sidebar_minifiy, this);
2516
  SidekickWP.Events.on('size_drawer', this.size_drawer, this);
2517
 
2518
-
2519
- Sidekick.Events.on('track_play', this.check_sidebar_minifiy, this);
2520
- Sidekick.Events.on('track_play', this.toggle_sidekick_drawer,'hide');
2521
- Sidekick.Events.on('track_stop', this.open_sidekick_drawer);
2522
-
2523
- Sidekick.Events.on('track_play', this.remove_hotspots,this);
2524
- Sidekick.Events.on('track_stop', this.draw_hotspots,this);
2525
-
2526
- Sidekick.Events.on('nextStep', this.update_debugger);
2527
 
2528
  return this.render();
2529
  },
2530
 
2531
  render: function(){
2532
- console.groupEnd('%crender: SidekickWP: appView %o', 'color:#8fa2ff', this);
2533
 
2534
  this.BucketContainer = new SidekickWP.Models.BucketContainer({
2535
- full_library: this.model.get('full_library')
 
2536
  });
2537
 
2538
  if (_.size(this.model.get('full_library').buckets) > 0) {
@@ -2543,10 +2607,13 @@ jQuery.extend( jQuery.easing,
2543
  }
2544
 
2545
  var template = _.template( SidekickWP.Templates.App, {
2546
- sk_debug: this.model.get('sk_debug'),
2547
- BucketContainer: BucketContainer,
2548
- paid_library: this.model.get('paid_library'),
2549
- hotspots: $.cookie('sidekick_hotspots')
 
 
 
2550
  });
2551
  this.$el.append( template );
2552
 
@@ -2562,8 +2629,8 @@ jQuery.extend( jQuery.easing,
2562
  var currentDebugMode = $.cookie('sidekick_debug_mode');
2563
 
2564
  $(document).bind('keypress.sidekickwp',{context: this}, function(e){
2565
- console.log('e %o', e);
2566
- console.log('e.keyCode %o', e.keyCode);
2567
 
2568
  if ((e.keyCode == 68 || e.charCode == 68) && e.shiftKey === true) { // shift D
2569
  var currentDebugMode = $.cookie('sidekick_debug_mode');
@@ -2635,12 +2702,31 @@ jQuery.extend( jQuery.easing,
2635
  SidekickWP.Events.trigger('screen_activate');
2636
  },
2637
 
 
 
 
 
 
 
 
 
 
2638
  check_sidebar_minifiy: function(){
2639
  var width = $( document ).width();
2640
  var playing = $('#sidekick').hasClass('playing');
2641
  if (width < 784 && playing) {
2642
  $('.sidekick_stop').trigger('click');
2643
- Sidekick.Events.trigger('show_modal',{error_id:1,msg: 'Sidekick requires a larger window to run properly.'});
 
 
 
 
 
 
 
 
 
 
2644
  }
2645
 
2646
  if ('body.sticky-menu') {
@@ -2657,7 +2743,24 @@ jQuery.extend( jQuery.easing,
2657
 
2658
  show_feedback: function(){
2659
  // console.log('show_feedback');
2660
- Sidekick.Events.trigger('show_modal',{title:'Feedback',message: 'Send us some feedback!',primary_button_message: 'Send',secondary_button_message:'Cancel',email:sk_config.user_email});
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2661
  },
2662
 
2663
  resize_sidekick_drawer: function(){
@@ -2863,10 +2966,10 @@ jQuery.extend( jQuery.easing,
2863
  // selectors = '.add-new-h2';
2864
  $('body').append('<a href="javascript: sidekick.play(' + hotspot_data.id + ')"><div class="sk_hotspot sk_hotspot_' + hotspot + '" data-target="' + selectors + '"></div></a>');
2865
 
2866
- console.log('%cAttaching Single Hotspot %o[%O] -> (%o [%O])','color: #64c541','sk_hotspot_' + hotspot,$('.sk_hotspot_' + hotspot), selectors,$(selectors));
2867
 
2868
- console.log('at: selector_x + " " + selector_y %o', selector_x + " " + selector_y);
2869
- console.log('my: hotspot_x + hotspot_x_padding + " " + hotspot_y + hotspot_y_padding %o', hotspot_x + hotspot_x_padding + " " + hotspot_y + hotspot_y_padding);
2870
 
2871
  $('.sk_hotspot_' + hotspot).position({
2872
  at: selector_x + " " + selector_y,
@@ -2885,8 +2988,8 @@ jQuery.extend( jQuery.easing,
2885
 
2886
 
2887
  $(selectors).on("css-change", function(event, change){
2888
- console.log('css-change',arguments);
2889
- console.log('this %o', this);
2890
 
2891
  var selector_x = 'left';
2892
  var selector_y = 'top';
@@ -2905,7 +3008,7 @@ jQuery.extend( jQuery.easing,
2905
 
2906
  $('.sk_hotspot').wait(20*count).addClass('visible');
2907
  } else if ($(selectors).length > 1){
2908
- console.log('selectors %o', selectors);
2909
 
2910
  _.each($(selectors),function(item,key){
2911
  $('body').append('<a href="javascript: sidekick.play(' + hotspot_data.id + ')"><div class="sk_hotspot sk_hotspot_' + hotspot + '_' + key + '" data-target="' + item + '"></div></a>');
@@ -2947,8 +3050,9 @@ jQuery.extend( jQuery.easing,
2947
  // console.group('%crender: render: bucketContainerView %o', 'color:#8fa2ff', this);
2948
 
2949
  this.bucket = new SidekickWP.Models.Bucket({
2950
- title: this.model.get('title'),
2951
- full_library: this.model.get('full_library')
 
2952
  });
2953
  this.$el.append(this.bucket.view.render().el);
2954
  // console.groupEnd();
@@ -2956,7 +3060,7 @@ jQuery.extend( jQuery.easing,
2956
  },
2957
 
2958
  clicked_bucket: function(e){
2959
- // console.log('clicked_bucket',e);
2960
 
2961
 
2962
  var navigation_history = this.model.get('navigation_history');
@@ -3040,7 +3144,7 @@ jQuery.extend( jQuery.easing,
3040
  },
3041
 
3042
  draw_bucket: function(bucket_id){
3043
- // console.info('draw_bucket %o', bucket_id);
3044
  var full_library = this.model.get('full_library');
3045
  var bucket_data = this.find_bucket_by_id_rec(full_library.buckets,'id',bucket_id);
3046
 
@@ -3060,7 +3164,7 @@ jQuery.extend( jQuery.easing,
3060
  },
3061
 
3062
  draw_walkthroughs: function(bucket_id){
3063
- // console.log('draw_walkthroughs %o', bucket_id);
3064
 
3065
  var full_library = this.model.get('full_library');
3066
  var bucket_data = this.find_bucket_by_id_rec(full_library.buckets,'id',bucket_id);
@@ -3078,7 +3182,8 @@ jQuery.extend( jQuery.easing,
3078
  },
3079
 
3080
  setup_events: function(){
3081
- $('.heading').unbind('click').click({context:this},function(e){
 
3082
  e.data.context.clicked_bucket(this);
3083
  });
3084
 
@@ -3102,7 +3207,8 @@ jQuery.extend( jQuery.easing,
3102
  // console.group('%crender: render: bucketView %o', 'color:#8fa2ff', this);
3103
 
3104
  var variables = {
3105
- full_library: this.model.get('full_library')
 
3106
  };
3107
 
3108
  console.log('SidekickWP.Templates.Bucket variables %o', variables);
@@ -3275,7 +3381,7 @@ jQuery.extend( jQuery.easing,
3275
  SidekickWP.Templates.App = [
3276
  "<div id='sidekick' class='sidekick_player'>",
3277
  "<div id='sk_taskbar'>",
3278
- "<div id='logo'></div>",
3279
  "<button class='sk_toggle'></button>",
3280
  "<div class='sk_controls'>",
3281
  "<button class='sidekick_restart'></button>",
@@ -3287,6 +3393,7 @@ SidekickWP.Templates.App = [
3287
  "<input type='text' name='step' placeholder='Force Step'></input>",
3288
  "<div class=''>Skip Step <br/>Press ></div>",
3289
  "</div>",
 
3290
  "<div class='sk_toggles'>",
3291
  // "<% console.log('hotspots %o',hotspots);%>",
3292
  "<button id='toggle_hotspots' <% if (hotspots === '1' || typeof hotspots === 'undefined'){%>class='on'<% } %> alt='Number of hotspots'>0</button>",
@@ -3294,8 +3401,12 @@ SidekickWP.Templates.App = [
3294
  "<button id='toggle_preferences'></button>",
3295
  "<button id='toggle_drawer'><i></i></button>",
3296
  "</div>",
 
 
 
3297
  "<div class='sk_info'>",
3298
  "<div class='sk_title'><label>Now Playing</label><span class='sk_walkthrough_title'></span></div>",
 
3299
  "<div class='sk_time'>0:00/0:00</div>",
3300
  "</div>",
3301
  "<div class='sk_caption'>",
@@ -3303,7 +3414,7 @@ SidekickWP.Templates.App = [
3303
  "</div>",
3304
  "</div>",
3305
  "<div id='sk_drawer'>",
3306
- "<h2><span>Walkthroughs</span><button id='close_sidekick'></button></h2>",
3307
  "<ul class='sk_bucketContainer'>",
3308
  "<% print(BucketContainer) %>",
3309
  "<% if(typeof paid_library === 'undefined' || paid_library == null || _.size(paid_library.buckets) == 0){ %>",
@@ -3315,10 +3426,53 @@ SidekickWP.Templates.App = [
3315
  ].join("");
3316
 
3317
  SidekickWP.Templates.Bucket = [
3318
- "<ul class='buckets' data-bucket_id='buckets'>",
3319
  "<% _.each(full_library.buckets, function(bucket_data, bucket_title){ %>",
3320
  "<li class='heading bucket_heading' <% if (bucket_data.sub_buckets){ %> data-open_bucket='<% print(bucket_data.id) %>' <% } else { %> data-open_walkthroughs='<% print(bucket_data.id) %>' <% } %> ><span><% print(bucket_title) %></span><i></i></li>",
3321
  "<% }); %>",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3322
  "</ul>"
3323
  ].join("");
3324
 
@@ -3378,10 +3532,10 @@ SidekickWP.Templates.User = [
3378
  "<h3>Benefits of premium</h3>",
3379
  "<ul>",
3380
  "<li id='more'>",
3381
- "<h4>More Walkthroughs</h4><p>Get our full WordPress Core library of over 150 walkthroughs.</p>",
3382
  "</li>",
3383
  "<li id='types'>",
3384
- "<h4>Hotspots & Overviews</h4><p>Gain in depth knowledge and quick hints.</p>",
3385
  "</li>",
3386
  "</ul>",
3387
  "</div>",
@@ -3435,7 +3589,7 @@ SidekickWP.Templates.Walkthroughs = [
3435
  "<% } %>",
3436
  "<% first_drawn = true %>",
3437
  "<% } %>",
3438
- "<a href='javascript: sidekick.play(<% print(walkthrough.id) %>)'><li class='overview'><% print(walkthrough.title) %></li></a>",
3439
  "<% } %>",
3440
  "<% }); %>",
3441
  "<% var first_drawn = false; %>",
@@ -3449,7 +3603,7 @@ SidekickWP.Templates.Walkthroughs = [
3449
  "<% } %>",
3450
  "<% first_drawn = true %>",
3451
  "<% } %>",
3452
- "<a href='javascript: sidekick.play(<% print(walkthrough.id) %>)'><li class='how'><% print(walkthrough.title) %></li></a>",
3453
  "<% } %>",
3454
  "<% }); %>",
3455
  "</ul>",
@@ -3570,14 +3724,8 @@ SidekickWP.Templates.Message = [
3570
  // }
3571
  // }
3572
  });
3573
- }(jQuery));;
3574
- jQuery(document).ready(function($) {
3575
- console.log('sk plr rdy');
3576
- console.log('sk_free_library %o', sk_free_library);
3577
-
3578
  window.sidekickWP = new SidekickWP.Models.App({
3579
  show_toggle_feedback: true
3580
  });
3581
- // console.log('window.sidekickWP %o', window.sidekickWP);
3582
- // jQuery('#logo').trigger('click');
3583
  });
1
+ /*! sidekick - v1.3.4 - 2014-06-05 */(function(jQuery, window){
2
 
3
  jQuery.fn.center = function () {
4
  this.css("position","absolute");
1391
  * to offer multiple easing options
1392
  *
1393
  * TERMS OF USE - jQuery Easing
1394
+ *
1395
+ * Open source under the BSD License.
1396
+ *
1397
  * Copyright © 2008 George McGinley Smith
1398
  * All rights reserved.
1399
+ *
1400
+ * Redistribution and use in source and binary forms, with or without modification,
1401
  * are permitted provided that the following conditions are met:
1402
+ *
1403
+ * Redistributions of source code must retain the above copyright notice, this list of
1404
  * conditions and the following disclaimer.
1405
+ * Redistributions in binary form must reproduce the above copyright notice, this list
1406
+ * of conditions and the following disclaimer in the documentation and/or other materials
1407
  * provided with the distribution.
1408
+ *
1409
+ * Neither the name of the author nor the names of contributors may be used to endorse
1410
  * or promote products derived from this software without specific prior written permission.
1411
+ *
1412
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
1413
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1414
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1415
  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1416
  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1417
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
1418
  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1419
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
1420
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
1421
  *
1422
  */
1423
 
1424
+ jQuery(document).ready(function() {
1425
+
1426
+
1427
  // t: current time, b: begInnIng value, c: change In value, d: duration
1428
  jQuery.easing['jswing'] = jQuery.easing['swing'];
1429
 
1536
  return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
1537
  },
1538
  easeInOutBack: function (x, t, b, c, d, s) {
1539
+ if (s == undefined) s = 1.70158;
1540
  if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
1541
  return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
1542
  },
1563
  /*
1564
  *
1565
  * TERMS OF USE - EASING EQUATIONS
1566
+ *
1567
+ * Open source under the BSD License.
1568
+ *
1569
  * Copyright © 2001 Robert Penner
1570
  * All rights reserved.
1571
+ *
1572
+ * Redistribution and use in source and binary forms, with or without modification,
1573
  * are permitted provided that the following conditions are met:
1574
+ *
1575
+ * Redistributions of source code must retain the above copyright notice, this list of
1576
  * conditions and the following disclaimer.
1577
+ * Redistributions in binary form must reproduce the above copyright notice, this list
1578
+ * of conditions and the following disclaimer in the documentation and/or other materials
1579
  * provided with the distribution.
1580
+ *
1581
+ * Neither the name of the author nor the names of contributors may be used to endorse
1582
  * or promote products derived from this software without specific prior written permission.
1583
+ *
1584
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
1585
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1586
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1587
  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1588
  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1589
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
1590
  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1591
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
1592
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
1593
  *
1594
+ */
1595
+
1596
+ });;/*
1597
  * $ lightbox_me
1598
  * By: Buck Wilson
1599
  * Version : 2.3
1872
 
1873
  SidekickWP.Models.App = Backbone.Model.extend({
1874
  defaults: {
1875
+ full_library: null,
1876
+ buckets: [],
1877
+ passed_walkthroughs: [],
1878
+ passed_current_page_walkthroughs: [],
1879
+ library_filtered_hotspots: [],
1880
+ paid_library: null,
1881
+ my_library: null,
1882
+ wp_version: null,
1883
+ installed_plugins: null,
1884
+ current_url: null,
1885
+ current_plugin: null,
1886
+ license_status: null,
1887
+ show_toggle_feedback: true,
1888
+ sk_debug: null,
1889
+ qa_mode: false,
1890
+ bucket_counts: []
1891
  },
1892
 
1893
  initialize: function(){
1949
  if(typeof sk_paid_library !== 'undefined' && _.size(sk_paid_library.buckets) > 0){
1950
  console.groupCollapsed('%cFOUND sk_paid_library %o', 'background-color: #51fa3d; color black;',sk_paid_library);
1951
 
1952
+ sk_config.site_url = sk_config.site_url.replace('www.','');
1953
  var paid_library_domain = sk_paid_library.domain_name;
1954
+ paid_library_domain = paid_library_domain.replace('www.','');
1955
 
1956
  if (paid_library_domain.indexOf(',') > -1) {
1957
  var paid_library_domains = paid_library_domain.split(',');
1958
  _.each(paid_library_domains,function(item){
1959
+ if (item) {
1960
+ item = item.replace('www.','');
1961
+
1962
+ if (sk_config.site_url == item.trim()) {
1963
+ matched_domain = item;
1964
+ console.log('%cMATCHED DOMAIN %o == %o', 'background-color: #51fa3d;color: black',sk_config.site_url,item);
1965
+ } else {
1966
+ console.log('%cCHECK DOMAIN %o == %o', 'background-color: #c12029;color: white',sk_config.site_url,item);
1967
+ }
1968
  }
1969
  });
1970
  } else {
1983
  }
1984
  }
1985
 
1986
+ if (matched_domain || sk_config.site_url === 'local.sidekick.pro') {
1987
  this.set('full_library',sk_paid_library);
1988
  this.set('paid_library',sk_paid_library);
1989
  console.info('%cPaid Library for %s -> ' + sk_config.library_paid_file + ' (%o)', 'background-color: #51fa3d; color black;',matched_domain,sk_paid_library);
2047
  this.filter_sub_bucket_recursive(item);
2048
  },this);
2049
 
2050
+ console.log('filter_walkthroughs library.buckets %o', library.buckets);
2051
+
2052
+
2053
  _.each(library.buckets,function(item,key){
2054
  // Delete root bucket if no sub buckets
2055
  this.check_delete_empty_sub_buckets_recrusive(item);
2056
 
2057
+ console.log('key %o', key);
2058
+
2059
+ console.log('_.size(library.buckets[key].sub_buckets) %o', _.size(library.buckets[key].sub_buckets));
2060
+
2061
+ console.log('library.buckets[key].sub_buckets %o', library.buckets[key].sub_buckets);
2062
+
2063
  if (_.size(library.buckets[key].sub_buckets) === 0 && _.size(library.buckets[key].walkthroughs) === 0) {
2064
+ console.log('%cDELETE ROOT BUCKET -> %o(%o)','color: red',key,library.buckets[key]);
2065
  delete(library.buckets[key]);
2066
  }
2067
  },this);
2069
  },
2070
 
2071
  check_delete_empty_sub_buckets_recrusive: function(sub_bucket){
2072
+ console.groupCollapsed('%ccheck_delete_empty_sub_buckets_recrusive %o (%o)', 'color: #d2984c;',sub_bucket.post_title,sub_bucket);
2073
 
2074
  if (_.size(sub_bucket.sub_buckets) > 0) {
2075
  _.each(sub_bucket.sub_buckets,function(item,key){
2076
  if (!this.check_delete_empty_sub_buckets_recrusive(item)) {
2077
+ console.log('%cDELETE key %o', 'color: red;',key);
2078
  delete(sub_bucket.sub_buckets[key]);
2079
  }
2080
  },this);
2081
+
2082
+ console.groupEnd();
2083
+ if (_.size(sub_bucket.sub_buckets) === 0 && _.size(sub_bucket.walkthroughs) === 0 ) {
2084
+ console.log('Delete parent sub bucket as it has no more children');
2085
+ return false;
2086
+ } else {
2087
+ return true;
2088
+ }
2089
+
2090
  } else if (_.size(sub_bucket.sub_buckets) === 0 && _.size(sub_bucket.walkthroughs) === 0 ){
2091
+ console.groupEnd();
2092
  return false;
2093
  }
2094
+ console.groupEnd();
2095
  return true;
2096
  },
2097
 
2183
 
2184
  // Checking Plugin Compatibility
2185
  if (typeof walkthrough.plugin !== 'undefined') {
2186
+ if (typeof sk_config.installed_plugins === 'undefined')
2187
+ return false;
2188
+
2189
  pass_plugin = _.find(sk_config.installed_plugins,function(plugin_data){
2190
  for (var plugin in plugin_data) {
2191
  var version = plugin_data[plugin];
2193
  if (plugin == walkthrough.plugin || _.escape(plugin) == walkthrough.plugin) {
2194
  pass_plugin = true;
2195
 
2196
+ if (typeof walkthrough.plugin_version === 'undefined') {
2197
+ pass_plugin_version = true;
2198
+ return true;
2199
+ }
2200
+
2201
  pass_plugin_version = _.find(walkthrough.plugin_version,function(version2){
2202
  if (version == version2) {
2203
  pass_plugin_version = true;
2211
  });
2212
 
2213
  if (!pass_plugin) {
2214
+ console.log('%cFAILED %s (%o) - PLUGIN %s (%o)','color: red',walkthrough.title, walkthrough, walkthrough.plugin, sk_config);
2215
  return false;
2216
  }
2217
+
2218
+ console.log('pass_plugin_version %o', pass_plugin_version);
2219
+
2220
+
2221
  if (!pass_plugin_version){
2222
+ console.log('%cFAILED %s (%o) - PLUGIN %s VER %s (%o)','color: red',walkthrough.title, walkthrough, walkthrough.plugin, walkthrough.plugin_version, sk_config);
2223
  return false;
2224
  }
2225
  }
2241
  return false;
2242
  }
2243
 
2244
+ var page_related_walkthrough = false;
2245
+
2246
  // Check display rules
2247
  if (walkthrough.display_rules) {
2248
  console.log('walkthrough.display_rules %o', walkthrough.display_rules);
2301
  console.groupEnd();
2302
  return false;
2303
  }
2304
+ } else if (rule_data.operator.toLowerCase() === 'contains') {
2305
+ if (typeof sk_config[rule_data.variable] === 'undefined' || sk_config[rule_data.variable].indexOf(rule_data.value) === -1) {
2306
+ console.log('%cFAILED Custom Rule [%s] %s < %s','color: red',rule_data.operator.toLowerCase(),rule_data.variable, rule_data.value);
2307
+ console.log('sk_config[rule_data.variable] %o', sk_config[rule_data.variable]);
2308
+ console.log('rule_data.value %o', rule_data.value);
2309
+ console.log('sk_config[rule_data.variable] < rule_data.value %o', sk_config[rule_data.variable] < rule_data.value);
2310
+ console.groupEnd();
2311
+ return false;
2312
+ } else {
2313
+ page_related_walkthrough = true;
2314
+ }
2315
+ } else {
2316
+ console.log('%cFAILED Unrecognized Rule [%s] %s < %s','color: red',rule_data.operator.toLowerCase(),rule_data.variable, rule_data.value);
2317
+ return false;
2318
  }
2319
  console.group('%cPASSED Custom Rule %s %s %s','color: #3ab00b',rule_data.variable, sk_config[rule_data.variable], rule_data.operator.toLowerCase(), rule_data.value);
2320
  console.log('sk_config[rule_data.variable] %o', sk_config[rule_data.variable]);
2328
  passed_walkthroughs.push(walkthrough.id);
2329
  this.set('passed_walkthroughs',passed_walkthroughs);
2330
 
2331
+ if (page_related_walkthrough) {
2332
+ var passed_current_page_walkthroughs = this.get('passed_current_page_walkthroughs');
2333
+ passed_current_page_walkthroughs.push({
2334
+ id: walkthrough.id,
2335
+ title: walkthrough.title,
2336
+ type: walkthrough.type
2337
+ });
2338
+ this.set('passed_current_page_walkthroughs',passed_current_page_walkthroughs);
2339
+ }
2340
+
2341
  if (walkthrough.plugin) {
2342
  console.log('%cPASSED %s', 'color: #3ab00b',walkthrough.plugin + ': ' + walkthrough.title + '(' + walkthrough.id + ')');
2343
  } else {
2400
 
2401
  SidekickWP.Models.Bucket = Backbone.Model.extend({
2402
  defaults: {
2403
+ full_library: null,
2404
+ passed_current_page_walkthroughs: null
2405
  },
2406
 
2407
  initialize: function(){
2580
  SidekickWP.Events.on('window_resize', this.check_sidebar_minifiy, this);
2581
  SidekickWP.Events.on('size_drawer', this.size_drawer, this);
2582
 
2583
+ Sidekick.Events.on('show_click_warning', this.show_click_warning, this);
2584
+ Sidekick.Events.on('track_play', this.check_sidebar_minifiy, this);
2585
+ Sidekick.Events.on('track_play', this.toggle_sidekick_drawer,'hide');
2586
+ Sidekick.Events.on('track_stop', this.open_sidekick_drawer);
2587
+ Sidekick.Events.on('track_play', this.remove_hotspots,this);
2588
+ Sidekick.Events.on('track_stop', this.draw_hotspots,this);
2589
+ Sidekick.Events.on('nextStep', this.update_debugger);
 
 
2590
 
2591
  return this.render();
2592
  },
2593
 
2594
  render: function(){
2595
+ console.groupCollapsed('%crender: SidekickWP: appView %o', 'color:#8fa2ff', this);
2596
 
2597
  this.BucketContainer = new SidekickWP.Models.BucketContainer({
2598
+ full_library: this.model.get('full_library'),
2599
+ passed_current_page_walkthroughs: this.model.get('passed_current_page_walkthroughs')
2600
  });
2601
 
2602
  if (_.size(this.model.get('full_library').buckets) > 0) {
2607
  }
2608
 
2609
  var template = _.template( SidekickWP.Templates.App, {
2610
+ sidekick_title: (typeof sk_config.sidekick_title !== 'undefined') ? sk_config.sidekick_title : '',
2611
+ drawer_title: (typeof sk_config.drawer_title !== 'undefined') ? sk_config.drawer_title : 'Walkthroughs',
2612
+ show_powered_by: (typeof sk_config.show_powered_by !== 'undefined') ? sk_config.show_powered_by : '',
2613
+ sk_debug: this.model.get('sk_debug'),
2614
+ BucketContainer: BucketContainer,
2615
+ paid_library: this.model.get('paid_library'),
2616
+ hotspots: $.cookie('sidekick_hotspots')
2617
  });
2618
  this.$el.append( template );
2619
 
2629
  var currentDebugMode = $.cookie('sidekick_debug_mode');
2630
 
2631
  $(document).bind('keypress.sidekickwp',{context: this}, function(e){
2632
+ // console.log('e %o', e);
2633
+ // console.log('e.keyCode %o', e.keyCode);
2634
 
2635
  if ((e.keyCode == 68 || e.charCode == 68) && e.shiftKey === true) { // shift D
2636
  var currentDebugMode = $.cookie('sidekick_debug_mode');
2702
  SidekickWP.Events.trigger('screen_activate');
2703
  },
2704
 
2705
+ show_click_warning: function(){
2706
+ $('#sidekick #click_warning').remove();
2707
+ $('#sidekick').append('<div id="click_warning"><h3></h3><span>Clicks are restricted during Walkthroughs. Stop the Walkthrough to navigate normally.</span></div>')
2708
+ .find('#click_warning')
2709
+ .addClass('show')
2710
+ .wait(3000)
2711
+ .removeClass('show');
2712
+ },
2713
+
2714
  check_sidebar_minifiy: function(){
2715
  var width = $( document ).width();
2716
  var playing = $('#sidekick').hasClass('playing');
2717
  if (width < 784 && playing) {
2718
  $('.sidekick_stop').trigger('click');
2719
+
2720
+ Sidekick.Events.trigger('show_modal',{
2721
+ error_id: 1,
2722
+ title: 'ERROR',
2723
+ msg: 'Sidekick requires a larger window to run properly.',
2724
+
2725
+ button1: {
2726
+ title: 'Ok',
2727
+ onclick: "javascript:jQuery(\'#sk_lightbox .close\').trigger(\'click\');javascript:jQuery(\'.sidekick_play_pause\').trigger(\'click\')"
2728
+ }
2729
+ });
2730
  }
2731
 
2732
  if ('body.sticky-menu') {
2743
 
2744
  show_feedback: function(){
2745
  // console.log('show_feedback');
2746
+ // Sidekick.Events.trigger('show_modal',{title:'Feedback',message: 'Send us some feedback!',primary_button_message: 'Send',secondary_button_message:'Cancel',email:sk_config.user_email});
2747
+
2748
+ Sidekick.Events.trigger('show_modal',{
2749
+ title: 'Feedback',
2750
+ // msg: 'Send us some feedback!',
2751
+ email: sk_config.user_email,
2752
+ height: 340,
2753
+
2754
+ button1: {
2755
+ title: 'Cancel',
2756
+ onclick: "javascript:jQuery(\'#sk_lightbox .close\').trigger(\'click\');javascript:jQuery(\'.sidekick_play_pause\').trigger(\'click\')"
2757
+ },
2758
+ button2: {
2759
+ title: 'Send',
2760
+ onclick: "javascript:Sidekick.Events.trigger(\'send_notification\')"
2761
+ }
2762
+ });
2763
+
2764
  },
2765
 
2766
  resize_sidekick_drawer: function(){
2966
  // selectors = '.add-new-h2';
2967
  $('body').append('<a href="javascript: sidekick.play(' + hotspot_data.id + ')"><div class="sk_hotspot sk_hotspot_' + hotspot + '" data-target="' + selectors + '"></div></a>');
2968
 
2969
+ // console.log('%cAttaching Single Hotspot %o[%O] -> (%o [%O])','color: #64c541','sk_hotspot_' + hotspot,$('.sk_hotspot_' + hotspot), selectors,$(selectors));
2970
 
2971
+ // console.log('at: selector_x + " " + selector_y %o', selector_x + " " + selector_y);
2972
+ // console.log('my: hotspot_x + hotspot_x_padding + " " + hotspot_y + hotspot_y_padding %o', hotspot_x + hotspot_x_padding + " " + hotspot_y + hotspot_y_padding);
2973
 
2974
  $('.sk_hotspot_' + hotspot).position({
2975
  at: selector_x + " " + selector_y,
2988
 
2989
 
2990
  $(selectors).on("css-change", function(event, change){
2991
+ // console.log('css-change',arguments);
2992
+ // console.log('this %o', this);
2993
 
2994
  var selector_x = 'left';
2995
  var selector_y = 'top';
3008
 
3009
  $('.sk_hotspot').wait(20*count).addClass('visible');
3010
  } else if ($(selectors).length > 1){
3011
+ // console.log('selectors %o', selectors);
3012
 
3013
  _.each($(selectors),function(item,key){
3014
  $('body').append('<a href="javascript: sidekick.play(' + hotspot_data.id + ')"><div class="sk_hotspot sk_hotspot_' + hotspot + '_' + key + '" data-target="' + item + '"></div></a>');
3050
  // console.group('%crender: render: bucketContainerView %o', 'color:#8fa2ff', this);
3051
 
3052
  this.bucket = new SidekickWP.Models.Bucket({
3053
+ title: this.model.get('title'),
3054
+ full_library: this.model.get('full_library'),
3055
+ passed_current_page_walkthroughs: this.model.get('passed_current_page_walkthroughs')
3056
  });
3057
  this.$el.append(this.bucket.view.render().el);
3058
  // console.groupEnd();
3060
  },
3061
 
3062
  clicked_bucket: function(e){
3063
+ console.log('clicked_bucket',e);
3064
 
3065
 
3066
  var navigation_history = this.model.get('navigation_history');
3144
  },
3145
 
3146
  draw_bucket: function(bucket_id){
3147
+ console.info('draw_bucket %o', bucket_id);
3148
  var full_library = this.model.get('full_library');
3149
  var bucket_data = this.find_bucket_by_id_rec(full_library.buckets,'id',bucket_id);
3150
 
3164
  },
3165
 
3166
  draw_walkthroughs: function(bucket_id){
3167
+ console.log('draw_walkthroughs %o', bucket_id);
3168
 
3169
  var full_library = this.model.get('full_library');
3170
  var bucket_data = this.find_bucket_by_id_rec(full_library.buckets,'id',bucket_id);
3182
  },
3183
 
3184
  setup_events: function(){
3185
+
3186
+ $('[data-open_bucket],[data-open_walkthroughs],.goprev,.sub_bucket_heading').unbind('click').click({context:this},function(e){
3187
  e.data.context.clicked_bucket(this);
3188
  });
3189
 
3207
  // console.group('%crender: render: bucketView %o', 'color:#8fa2ff', this);
3208
 
3209
  var variables = {
3210
+ full_library: this.model.get('full_library'),
3211
+ passed_current_page_walkthroughs: this.model.get('passed_current_page_walkthroughs')
3212
  };
3213
 
3214
  console.log('SidekickWP.Templates.Bucket variables %o', variables);
3381
  SidekickWP.Templates.App = [
3382
  "<div id='sidekick' class='sidekick_player'>",
3383
  "<div id='sk_taskbar'>",
3384
+ "<div id='logo'><% print(sidekick_title) %></div>",
3385
  "<button class='sk_toggle'></button>",
3386
  "<div class='sk_controls'>",
3387
  "<button class='sidekick_restart'></button>",
3393
  "<input type='text' name='step' placeholder='Force Step'></input>",
3394
  "<div class=''>Skip Step <br/>Press ></div>",
3395
  "</div>",
3396
+
3397
  "<div class='sk_toggles'>",
3398
  // "<% console.log('hotspots %o',hotspots);%>",
3399
  "<button id='toggle_hotspots' <% if (hotspots === '1' || typeof hotspots === 'undefined'){%>class='on'<% } %> alt='Number of hotspots'>0</button>",
3401
  "<button id='toggle_preferences'></button>",
3402
  "<button id='toggle_drawer'><i></i></button>",
3403
  "</div>",
3404
+ "<% if (show_powered_by){ %>",
3405
+ "<div class='sk_powered_by'>Powered by SIDEKICK.pro</div>",
3406
+ "<% } %>",
3407
  "<div class='sk_info'>",
3408
  "<div class='sk_title'><label>Now Playing</label><span class='sk_walkthrough_title'></span></div>",
3409
+ "<div class='sk_divider'></div>",
3410
  "<div class='sk_time'>0:00/0:00</div>",
3411
  "</div>",
3412
  "<div class='sk_caption'>",
3414
  "</div>",
3415
  "</div>",
3416
  "<div id='sk_drawer'>",
3417
+ "<h2><span><% print(drawer_title) %></span><button id='close_sidekick'></button></h2>",
3418
  "<ul class='sk_bucketContainer'>",
3419
  "<% print(BucketContainer) %>",
3420
  "<% if(typeof paid_library === 'undefined' || paid_library == null || _.size(paid_library.buckets) == 0){ %>",
3426
  ].join("");
3427
 
3428
  SidekickWP.Templates.Bucket = [
3429
+ "<ul class='buckets show' data-bucket_id='buckets'>",
3430
  "<% _.each(full_library.buckets, function(bucket_data, bucket_title){ %>",
3431
  "<li class='heading bucket_heading' <% if (bucket_data.sub_buckets){ %> data-open_bucket='<% print(bucket_data.id) %>' <% } else { %> data-open_walkthroughs='<% print(bucket_data.id) %>' <% } %> ><span><% print(bucket_title) %></span><i></i></li>",
3432
  "<% }); %>",
3433
+ "<% if (_.size(passed_current_page_walkthroughs) > 0){ %>",
3434
+ "<li class='heading bucket_heading related_walkthroughs_heading'><span>Related Walkthrough(s)</span></li>",
3435
+ "<li>",
3436
+ "<ul class='walkthroughs'>",
3437
+ "<ul class='walkthrough current_page_walkthroughs'>",
3438
+
3439
+ "<ul class='walkthroughs_inner'>",
3440
+
3441
+ "<% var first_drawn = false; %>",
3442
+ "<% _.each(passed_current_page_walkthroughs, function(walkthrough){ %>",
3443
+ "<% if (walkthrough.type == 'overview'){ %>",
3444
+ "<% if (!first_drawn){ %>",
3445
+ "<% if (_.size(passed_current_page_walkthroughs) > 1){ %>",
3446
+ "<li class='sub_heading'><span>Overviews</span></li>",
3447
+ "<% } else{ %>",
3448
+ "<li class='sub_heading'><span>Overview</span></li>",
3449
+ "<% } %>",
3450
+ "<% first_drawn = true %>",
3451
+ "<% } %>",
3452
+ "<a href='javascript: <% if (walkthrough.subscribed) { %> sidekick.play(<% print(walkthrough.id) %>) <% } else { %> sidekick.upgrade() <% } %>'><li class='overview <% if (walkthrough.subscribed){ %>subscribed<% } %>'><span><% print(walkthrough.title) %></span></li></a>",
3453
+ "<% } %>",
3454
+ "<% }); %>",
3455
+ "<% var first_drawn = false; %>",
3456
+ "<% _.each(passed_current_page_walkthroughs, function(walkthrough){ %>",
3457
+ "<% if (walkthrough.type == 'how'){ %>",
3458
+ "<% if (!first_drawn){ %>",
3459
+ "<% if (_.size(passed_current_page_walkthroughs) > 1){ %>",
3460
+ "<li class='sub_heading'><span>How Do I...</span></li>",
3461
+ "<% } else{ %>",
3462
+ "<li class='sub_heading'><span>How Do I...</span></li>",
3463
+ "<% } %>",
3464
+ "<% first_drawn = true %>",
3465
+ "<% } %>",
3466
+ "<a href='javascript: <% if (walkthrough.subscribed) { %> sidekick.play(<% print(walkthrough.id) %>) <% } else { %> sidekick.upgrade() <% } %>'><li class='how <% if (walkthrough.subscribed){ %>subscribed<% } %>'><span><% print(walkthrough.title) %></span></li></a>",
3467
+ "<% } %>",
3468
+ "<% }); %>",
3469
+ "</ul>",
3470
+ "</ul>",
3471
+ "</ul>",
3472
+ "</li>",
3473
+
3474
+
3475
+ "<% } %>",
3476
  "</ul>"
3477
  ].join("");
3478
 
3532
  "<h3>Benefits of premium</h3>",
3533
  "<ul>",
3534
  "<li id='more'>",
3535
+ "<i></i><h4>More Walkthroughs</h4><p>Get our full WordPress Core library of over 150 walkthroughs.</p>",
3536
  "</li>",
3537
  "<li id='types'>",
3538
+ "<i></i><h4>Hotspots & Overviews</h4><p>Gain in depth knowledge and quick hints.</p>",
3539
  "</li>",
3540
  "</ul>",
3541
  "</div>",
3589
  "<% } %>",
3590
  "<% first_drawn = true %>",
3591
  "<% } %>",
3592
+ "<a href='javascript: <% if (walkthrough.subscribed) { %> sidekick.play(<% print(walkthrough.id) %>) <% } else { %> sidekick.upgrade() <% } %>'><li class='overview <% if (walkthrough.subscribed){ %>subscribed<% } %>'><span><% print(walkthrough.title) %></span></li></a>",
3593
  "<% } %>",
3594
  "<% }); %>",
3595
  "<% var first_drawn = false; %>",
3603
  "<% } %>",
3604
  "<% first_drawn = true %>",
3605
  "<% } %>",
3606
+ "<a href='javascript: <% if (walkthrough.subscribed) { %> sidekick.play(<% print(walkthrough.id) %>) <% } else { %> sidekick.upgrade() <% } %>'><li class='how <% if (walkthrough.subscribed){ %>subscribed<% } %>'><span><% print(walkthrough.title) %></span></li></a>",
3607
  "<% } %>",
3608
  "<% }); %>",
3609
  "</ul>",
3724
  // }
3725
  // }
3726
  });
3727
+ }(jQuery));;jQuery(document).ready(function($) {
 
 
 
 
3728
  window.sidekickWP = new SidekickWP.Models.App({
3729
  show_toggle_feedback: true
3730
  });
 
 
3731
  });
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.sidekick.pro
4
  Tags: help, tutorial, training, learn, learning, sidekick, guide, teach, video, manual, videos, wphelp, support, instructions, question, questions, answers, answer, clippy, q&a, wpuniversity, helper, walkthrough
5
  Requires at least: 3.5
6
  Tested up to: 3.9
7
- Stable tag: 1.3.3
8
  License: GNU Version 2 or Any Later Version
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -130,6 +130,13 @@ Absolutely. In fact, we rely on users like you to tell us about things that nee
130
 
131
  == Changelog ==
132
 
 
 
 
 
 
 
 
133
  = 1.3.3 =
134
  * Fixed an issue with custom prefixed databases
135
 
4
  Tags: help, tutorial, training, learn, learning, sidekick, guide, teach, video, manual, videos, wphelp, support, instructions, question, questions, answers, answer, clippy, q&a, wpuniversity, helper, walkthrough
5
  Requires at least: 3.5
6
  Tested up to: 3.9
7
+ Stable tag: 1.3.4
8
  License: GNU Version 2 or Any Later Version
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
130
 
131
  == Changelog ==
132
 
133
+ = 1.3.4 =
134
+ * Updated Modal UI
135
+ * Dropped www. from domain checking
136
+ * Walkthroughs now pause when user double clicks on another element
137
+ * Paid Walkthroughs now show in the free library
138
+ * Fixed a bug where capabilities have spaces
139
+
140
  = 1.3.3 =
141
  * Fixed an issue with custom prefixed databases
142
 
sidekick.php CHANGED
@@ -5,15 +5,15 @@ Plugin Name: Sidekick
5
  Plugin URL: http://wordpress.org/plugins/sidekick/
6
  Description: Adds a real-time WordPress training walkthroughs right in your Dashboard
7
  Requires at least: 3.7
8
- Tested up to: 3.9
9
- Version: 1.3.3
10
  Author: Sidekick.pro
11
  Author URI: http://www.sidekick.pro
12
  */
13
 
14
- define('SK_PLUGIN_VERSION','1.3.3');
15
  define('SK_LIBRARY_VERSION',5);
16
- define('SK_PLATFORM_VERSION',6);
17
 
18
  if ( ! defined( 'SK_SL_PLUGIN_DIR' ) ) define( 'SK_SL_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
19
  if ( ! defined( 'SK_SL_PLUGIN_URL' ) ) define( 'SK_SL_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
@@ -57,7 +57,7 @@ class Sidekick{
57
  wp_enqueue_script("sk_free_library" , SK_FREE_LIBRARY_FILE , array() ,null);
58
  }
59
 
60
- wp_enqueue_script('sidekick' ,"{$protocol}platform.sidekick.pro/v" . SK_PLATFORM_VERSION . '/sidekick.min.js', array('sk_free_library','backbone','jquery','underscore','jquery-effects-highlight'), SK_PLUGIN_VERSION);
61
  wp_enqueue_script('player' ,plugins_url( '/js/sk.source.js' , __FILE__ ), array('sidekick') ,SK_PLUGIN_VERSION);
62
 
63
  wp_enqueue_style('sk-style' ,plugins_url( '/css/sidekick_wordpress.css' , __FILE__ ), null ,SK_PLUGIN_VERSION);
@@ -239,7 +239,8 @@ class Sidekick{
239
  <li>&nbsp;&nbsp;&nbsp;&nbsp;5. If you have any questions, bug reports or feedback, please send them to <a target='_blank' href='mailto:info@sidekick.pro'>us</a> </li>
240
  <li>&nbsp;&nbsp;&nbsp;&nbsp;6. You can find our terms of use <a target='_blank' href='http://www.sidekick.pro/terms-of-use/'>here</a></li>
241
  </ul>
242
- <p>Thank you,</p><br/>
 
243
 
244
  </div>
245
  <?php
@@ -295,11 +296,28 @@ class Sidekick{
295
  global $current_user;
296
  $data = get_userdata($current_user->ID);
297
  foreach ($data->allcaps as $cap => $val) {
 
298
  $cap = str_replace('-', '_', $cap);
299
  echo "\n cap_{$cap} : $val,";
300
  }
301
  }
302
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
303
  function footer(){
304
  global $current_user, $wp_roles;
305
 
@@ -341,6 +359,7 @@ class Sidekick{
341
  main_soft_name: 'WordPress',
342
  main_soft_version: '<?php echo get_bloginfo("version") ?>',
343
  plugin_url: '<?php echo admin_url("admin.php?page=sidekick") ?>',
 
344
  theme_version: '<?php echo $theme->Version ?>',
345
  site_url: '<?php echo $site_url ?>',
346
  track_data: '<?php echo get_option( "track_data" ) ?>',
@@ -513,6 +532,4 @@ class Sidekick{
513
  if (!(isset($_GET['tab']) && $_GET['tab'] == 'plugin-information') && !defined('IFRAME_REQUEST')) {
514
  add_action('admin_footer', array($sidekick,'footer'));
515
  add_action('customize_controls_print_footer_scripts', array($sidekick,'footer'));
516
- }
517
-
518
-
5
  Plugin URL: http://wordpress.org/plugins/sidekick/
6
  Description: Adds a real-time WordPress training walkthroughs right in your Dashboard
7
  Requires at least: 3.7
8
+ Tested up to: 3.9.1
9
+ Version: 1.3.4
10
  Author: Sidekick.pro
11
  Author URI: http://www.sidekick.pro
12
  */
13
 
14
+ define('SK_PLUGIN_VERSION','1.3.4');
15
  define('SK_LIBRARY_VERSION',5);
16
+ define('SK_PLATFORM_VERSION',7);
17
 
18
  if ( ! defined( 'SK_SL_PLUGIN_DIR' ) ) define( 'SK_SL_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
19
  if ( ! defined( 'SK_SL_PLUGIN_URL' ) ) define( 'SK_SL_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
57
  wp_enqueue_script("sk_free_library" , SK_FREE_LIBRARY_FILE , array() ,null);
58
  }
59
 
60
+ wp_enqueue_script('sidekick' ,"{$protocol}platform.sidekick.pro/v" . SK_PLATFORM_VERSION . '/wordpress/sidekick.min.js', array('sk_free_library','backbone','jquery','underscore','jquery-effects-highlight'), SK_PLUGIN_VERSION);
61
  wp_enqueue_script('player' ,plugins_url( '/js/sk.source.js' , __FILE__ ), array('sidekick') ,SK_PLUGIN_VERSION);
62
 
63
  wp_enqueue_style('sk-style' ,plugins_url( '/css/sidekick_wordpress.css' , __FILE__ ), null ,SK_PLUGIN_VERSION);
239
  <li>&nbsp;&nbsp;&nbsp;&nbsp;5. If you have any questions, bug reports or feedback, please send them to <a target='_blank' href='mailto:info@sidekick.pro'>us</a> </li>
240
  <li>&nbsp;&nbsp;&nbsp;&nbsp;6. You can find our terms of use <a target='_blank' href='http://www.sidekick.pro/terms-of-use/'>here</a></li>
241
  </ul>
242
+ <p>Thank you,</p>
243
+ <br/>
244
 
245
  </div>
246
  <?php
296
  global $current_user;
297
  $data = get_userdata($current_user->ID);
298
  foreach ($data->allcaps as $cap => $val) {
299
+ $cap = sanitize_title($cap);
300
  $cap = str_replace('-', '_', $cap);
301
  echo "\n cap_{$cap} : $val,";
302
  }
303
  }
304
 
305
+ function get_current_url() {
306
+
307
+ if (isset($_SERVER['REQUEST_URI'])) {
308
+ return 'http'.(empty($_SERVER['HTTPS'])?'':'s').'://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
309
+ } else if (isset($_SERVER['PATH_INFO'])) {
310
+ return $_SERVER['PATH_INFO'];
311
+ } else {
312
+ $host = $_SERVER['HTTP_HOST'];
313
+ $port = $_SERVER['SERVER_PORT'];
314
+ $request = $_SERVER['PHP_SELF'];
315
+ $query = isset($_SERVER['argv']) ? substr($_SERVER['argv'][0], strpos($_SERVER['argv'][0], ';') + 1) : '';
316
+ $toret = $protocol . '://' . $host . ($port == $protocol_port ? '' : ':' . $port) . $request . (empty($query) ? '' : '?' . $query);
317
+ return $toret;
318
+ }
319
+ }
320
+
321
  function footer(){
322
  global $current_user, $wp_roles;
323
 
359
  main_soft_name: 'WordPress',
360
  main_soft_version: '<?php echo get_bloginfo("version") ?>',
361
  plugin_url: '<?php echo admin_url("admin.php?page=sidekick") ?>',
362
+ current_url: '<?php echo $this->get_current_url() ?>',
363
  theme_version: '<?php echo $theme->Version ?>',
364
  site_url: '<?php echo $site_url ?>',
365
  track_data: '<?php echo get_option( "track_data" ) ?>',
532
  if (!(isset($_GET['tab']) && $_GET['tab'] == 'plugin-information') && !defined('IFRAME_REQUEST')) {
533
  add_action('admin_footer', array($sidekick,'footer'));
534
  add_action('customize_controls_print_footer_scripts', array($sidekick,'footer'));
535
+ }