MouseWheel Smooth Scroll - Version 1.0.2

Version Description

  • Improve / change default settings
Download this release

Release Info

Developer kubiq
Plugin Icon 128x128 MouseWheel Smooth Scroll
Version 1.0.2
Comparing to
See all releases

Version 1.0.2

js/jquery.browser.min.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){"use strict";var b,c;if(a.uaMatch=function(a){a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[];return{browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""}},b=a.uaMatch(window.navigator.userAgent),c={},b.browser&&(c[b.browser]=!0,c.version=b.version,c.versionNumber=parseInt(b.versionNumber,10)),b.platform&&(c[b.platform]=!0),(c.android||c.bb||c.blackberry||c.ipad||c.iphone||c.ipod||c.kindle||c.playbook||c.silk||c["windows phone"])&&(c.mobile=!0),(c.cros||c.mac||c.linux||c.win)&&(c.desktop=!0),(c.chrome||c.opr||c.safari)&&(c.webkit=!0),c.rv||c.edge){var d="msie";b.browser=d,c[d]=!0}if(c.safari&&c.blackberry){var e="blackberry";b.browser=e,c[e]=!0}if(c.safari&&c.playbook){var f="playbook";b.browser=f,c[f]=!0}if(c.bb){var g="blackberry";b.browser=g,c[g]=!0}if(c.opr){var h="opera";b.browser=h,c[h]=!0}if(c.safari&&c.android){var i="android";b.browser=i,c[i]=!0}if(c.safari&&c.kindle){var j="kindle";b.browser=j,c[j]=!0}if(c.safari&&c.silk){var k="silk";b.browser=k,c[k]=!0}return c.name=b.browser,c.platform=b.platform,a.browser=c,c});
js/jquery.easing.1.3.js ADDED
@@ -0,0 +1,133 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery.easing['jswing'] = jQuery.easing['swing'];
2
+
3
+ jQuery.extend( jQuery.easing,
4
+ {
5
+ def: 'easeOutQuad',
6
+ swing: function (x, t, b, c, d) {
7
+ return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
8
+ },
9
+ easeInQuad: function (x, t, b, c, d) {
10
+ return c*(t/=d)*t + b;
11
+ },
12
+ easeOutQuad: function (x, t, b, c, d) {
13
+ return -c *(t/=d)*(t-2) + b;
14
+ },
15
+ easeInOutQuad: function (x, t, b, c, d) {
16
+ if ((t/=d/2) < 1) return c/2*t*t + b;
17
+ return -c/2 * ((--t)*(t-2) - 1) + b;
18
+ },
19
+ easeInCubic: function (x, t, b, c, d) {
20
+ return c*(t/=d)*t*t + b;
21
+ },
22
+ easeOutCubic: function (x, t, b, c, d) {
23
+ return c*((t=t/d-1)*t*t + 1) + b;
24
+ },
25
+ easeInOutCubic: function (x, t, b, c, d) {
26
+ if ((t/=d/2) < 1) return c/2*t*t*t + b;
27
+ return c/2*((t-=2)*t*t + 2) + b;
28
+ },
29
+ easeInQuart: function (x, t, b, c, d) {
30
+ return c*(t/=d)*t*t*t + b;
31
+ },
32
+ easeOutQuart: function (x, t, b, c, d) {
33
+ return -c * ((t=t/d-1)*t*t*t - 1) + b;
34
+ },
35
+ easeInOutQuart: function (x, t, b, c, d) {
36
+ if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
37
+ return -c/2 * ((t-=2)*t*t*t - 2) + b;
38
+ },
39
+ easeInQuint: function (x, t, b, c, d) {
40
+ return c*(t/=d)*t*t*t*t + b;
41
+ },
42
+ easeOutQuint: function (x, t, b, c, d) {
43
+ return c*((t=t/d-1)*t*t*t*t + 1) + b;
44
+ },
45
+ easeInOutQuint: function (x, t, b, c, d) {
46
+ if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
47
+ return c/2*((t-=2)*t*t*t*t + 2) + b;
48
+ },
49
+ easeInSine: function (x, t, b, c, d) {
50
+ return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
51
+ },
52
+ easeOutSine: function (x, t, b, c, d) {
53
+ return c * Math.sin(t/d * (Math.PI/2)) + b;
54
+ },
55
+ easeInOutSine: function (x, t, b, c, d) {
56
+ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
57
+ },
58
+ easeInExpo: function (x, t, b, c, d) {
59
+ return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
60
+ },
61
+ easeOutExpo: function (x, t, b, c, d) {
62
+ return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
63
+ },
64
+ easeInOutExpo: function (x, t, b, c, d) {
65
+ if (t==0) return b;
66
+ if (t==d) return b+c;
67
+ if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
68
+ return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
69
+ },
70
+ easeInCirc: function (x, t, b, c, d) {
71
+ return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
72
+ },
73
+ easeOutCirc: function (x, t, b, c, d) {
74
+ return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
75
+ },
76
+ easeInOutCirc: function (x, t, b, c, d) {
77
+ if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
78
+ return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
79
+ },
80
+ easeInElastic: function (x, t, b, c, d) {
81
+ var s=1.70158;var p=0;var a=c;
82
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
83
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
84
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
85
+ return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
86
+ },
87
+ easeOutElastic: function (x, t, b, c, d) {
88
+ var s=1.70158;var p=0;var a=c;
89
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
90
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
91
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
92
+ return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
93
+ },
94
+ easeInOutElastic: function (x, t, b, c, d) {
95
+ var s=1.70158;var p=0;var a=c;
96
+ if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
97
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
98
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
99
+ if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
100
+ return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
101
+ },
102
+ easeInBack: function (x, t, b, c, d, s) {
103
+ if (s == undefined) s = 1.70158;
104
+ return c*(t/=d)*t*((s+1)*t - s) + b;
105
+ },
106
+ easeOutBack: function (x, t, b, c, d, s) {
107
+ if (s == undefined) s = 1.70158;
108
+ return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
109
+ },
110
+ easeInOutBack: function (x, t, b, c, d, s) {
111
+ if (s == undefined) s = 1.70158;
112
+ if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
113
+ return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
114
+ },
115
+ easeInBounce: function (x, t, b, c, d) {
116
+ return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
117
+ },
118
+ easeOutBounce: function (x, t, b, c, d) {
119
+ if ((t/=d) < (1/2.75)) {
120
+ return c*(7.5625*t*t) + b;
121
+ } else if (t < (2/2.75)) {
122
+ return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
123
+ } else if (t < (2.5/2.75)) {
124
+ return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
125
+ } else {
126
+ return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
127
+ }
128
+ },
129
+ easeInOutBounce: function (x, t, b, c, d) {
130
+ if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
131
+ return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
132
+ }
133
+ });
js/jquery.mousewheel.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(a){function d(b){var c=b||window.event,d=[].slice.call(arguments,1),e=0,f=!0,g=0,h=0;return b=a.event.fix(c),b.type="mousewheel",c.wheelDelta&&(e=c.wheelDelta/120),c.detail&&(e=-c.detail/3),h=e,c.axis!==undefined&&c.axis===c.HORIZONTAL_AXIS&&(h=0,g=-1*e),c.wheelDeltaY!==undefined&&(h=c.wheelDeltaY/120),c.wheelDeltaX!==undefined&&(g=-1*c.wheelDeltaX/120),d.unshift(b,e,g,h),(a.event.dispatch||a.event.handle).apply(this,d)}var b=["DOMMouseScroll","mousewheel"];if(a.event.fixHooks)for(var c=b.length;c;)a.event.fixHooks[b[--c]]=a.event.mouseHooks;a.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=b.length;a;)this.addEventListener(b[--a],d,!1);else this.onmousewheel=d},teardown:function(){if(this.removeEventListener)for(var a=b.length;a;)this.removeEventListener(b[--a],d,!1);else this.onmousewheel=null}},a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery)
js/jquery.simplr.smoothscroll.js ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function($) {
2
+ $.srSmoothscroll = function(options) {
3
+ var self = $.extend({
4
+ step: 55,
5
+ speed: 400,
6
+ ease: "swing"
7
+ }, options || {});
8
+ var win = $(window),
9
+ doc = $(document),
10
+ top = 0,
11
+ step = self.step,
12
+ speed = self.speed,
13
+ viewport = win.height(),
14
+ body = (navigator.userAgent.indexOf('AppleWebKit') !== -1) ? $('body') : $('html'),
15
+ wheel = false;
16
+ $('body').mousewheel(function(event, delta) {
17
+ wheel = true;
18
+ if (delta < 0)
19
+ top = (top+viewport) >= doc.height() ? top : top+=step;
20
+ else
21
+ top = top <= 0 ? 0 : top-=step;
22
+ body.stop().animate({scrollTop: top}, speed, self.ease, function () {
23
+ wheel = false;
24
+ });
25
+ return false;
26
+ });
27
+ win.on('resize', function (e) {
28
+ viewport = win.height();
29
+ }).on('scroll', function (e) {
30
+ if (!wheel)
31
+ top = win.scrollTop();
32
+ });
33
+ };
34
+ })(jQuery);
js/wpmss.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(document).ready(function($) {
2
+ MouseSmoothScroll();
3
+ });
4
+
5
+ function MouseSmoothScroll(){
6
+ <?php if ( $_GET['enableAll'] == 0 ): ?>
7
+ if( jQuery.browser.mac ) return false;
8
+ if( ! jQuery.browser.webkit ) return false;
9
+ <?php endif ?>
10
+ jQuery.srSmoothscroll({
11
+ step: <?php echo $_GET['step'] ?>,
12
+ speed: <?php echo $_GET['speed'] ?>,
13
+ ease: '<?php echo $_GET['ease'] ?>'
14
+ });
15
+ }
languages/wpmss-sk_SK.mo ADDED
Binary file
languages/wpmss-sk_SK.po ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: woocommerce-heureka\n"
4
+ "POT-Creation-Date: 2015-01-07 14:33+0100\n"
5
+ "PO-Revision-Date: 2015-01-07 14:34+0100\n"
6
+ "Last-Translator: Ing. Jakub Novák <info@kubiq.sk>\n"
7
+ "Language-Team: KubiQ <info@kubiq.sk>\n"
8
+ "Language: sk_SK\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.7\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
15
+ "X-Poedit-SourceCharset: UTF-8\n"
16
+ "X-Poedit-KeywordsList: __;_e\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+ "X-Poedit-SearchPath-1: ./..\n"
19
+
20
+ #: ../mousewheel-smooth-scroll.php:31
21
+ msgid "Settings"
22
+ msgstr "Nastavenia"
23
+
24
+ #: ../mousewheel-smooth-scroll.php:39 ../mousewheel-smooth-scroll.php:40
25
+ #: ../mousewheel-smooth-scroll.php:85
26
+ msgid "MouseWheel Smooth Scroll"
27
+ msgstr "MouseWheel Smooth Scroll"
28
+
29
+ #: ../mousewheel-smooth-scroll.php:68
30
+ msgid "General"
31
+ msgstr "Všeobecné"
32
+
33
+ #: ../mousewheel-smooth-scroll.php:68
34
+ msgid "Help"
35
+ msgstr "Pomoc"
36
+
37
+ #: ../mousewheel-smooth-scroll.php:86
38
+ msgid "Settings saved."
39
+ msgstr "Nastavenia boli uložené."
40
+
41
+ #: ../mousewheel-smooth-scroll.php:106
42
+ msgid "Step:"
43
+ msgstr "Krok:"
44
+
45
+ #: ../mousewheel-smooth-scroll.php:114
46
+ msgid "Speed:"
47
+ msgstr "Rýchlosť:"
48
+
49
+ #: ../mousewheel-smooth-scroll.php:122
50
+ msgid "Ease:"
51
+ msgstr "Animácia:"
52
+
53
+ #: ../mousewheel-smooth-scroll.php:163
54
+ msgid "try easings"
55
+ msgstr "pozrieť animácie"
56
+
57
+ #: ../mousewheel-smooth-scroll.php:168
58
+ msgid "Enable for MAC and non-WebKit browsers (experimental)"
59
+ msgstr "Povoliť pre Mac a prehliadače, ktoré nemajú WebKit (experiment)"
60
+
61
+ #: ../mousewheel-smooth-scroll.php:175
62
+ msgid "Save"
63
+ msgstr "Uložiť"
64
+
65
+ #: ../mousewheel-smooth-scroll.php:179
66
+ msgid "Any ideas, problems, issues?"
67
+ msgstr "Objavili ste chybu, máte nejaký problém alebo otázky k tomuto pluginu?"
68
+
69
+ #~ msgid "Enable mousewheel smooth scroll"
70
+ #~ msgstr "Povoliť plugin"
71
+
72
+ #~ msgid "HTML5 History"
73
+ #~ msgstr "HTML5 History"
74
+
75
+ #~ msgid "Element with content:"
76
+ #~ msgstr "Element s obsahom"
77
+
78
+ #~ msgid "Your settings have been saved."
79
+ #~ msgstr "Vaše nastavenia boli uložené."
80
+
81
+ #~ msgid "Heureka export"
82
+ #~ msgstr "Heureka export"
83
+
84
+ #~ msgid "Categories"
85
+ #~ msgstr "Kategórie"
86
+
87
+ #~ msgid "Shipping"
88
+ #~ msgstr "Doprava"
89
+
90
+ #~ msgid "Heureka XML export"
91
+ #~ msgstr "Heureka XML export"
92
+
93
+ #~ msgid "Product in stock is delivered in X days:"
94
+ #~ msgstr "Ak je produkt skladom, dodanie trvá (dni):"
95
+
96
+ #~ msgid "Product out of stock is delivered in X days:"
97
+ #~ msgstr "Ak produkt nie je skladom, dodanie trvá (dni):"
98
+
99
+ #~ msgid "Manufacturer"
100
+ #~ msgstr "Výrobca"
101
+
102
+ #~ msgid "This is attribute where manufacturer is stored"
103
+ #~ msgstr "Táto vlastnosť je výrobca produktu"
104
+
105
+ #~ msgid "Add manufacturer at the beginning of product name in XML export"
106
+ #~ msgstr "Pridať výrobcu pred názov produtku v exporte do XML"
107
+
108
+ #~ msgid "Attributes"
109
+ #~ msgstr "Vlastnosti"
110
+
111
+ #~ msgid "Attributes to display in export"
112
+ #~ msgstr "Vlastnosti zobrazené v exporte"
113
+
114
+ #~ msgid "Category"
115
+ #~ msgstr "Kategória"
116
+
117
+ #~ msgid "Price per click"
118
+ #~ msgstr "Cena za preklik"
119
+
120
+ #~ msgid "Shipping method"
121
+ #~ msgstr "Spôsob dopravy"
122
+
123
+ #~ msgid "Price"
124
+ #~ msgstr "Cena"
125
+
126
+ #~ msgid "Price COD"
127
+ #~ msgstr "Cena na dobierku"
128
+
129
+ #~ msgid "XML export for Heureka.sk:"
130
+ #~ msgstr "XML export pre Heureka.sk:"
131
+
132
+ #~ msgid "Settings saved succesfully"
133
+ #~ msgstr "Nastavenia boli úspešne uložené"
134
+
135
+ #~ msgid "Advanced"
136
+ #~ msgstr "Pokročilé"
137
+
138
+ #~ msgid "OSCommerce Database Settings"
139
+ #~ msgstr "OSCommerce Database Settings"
mousewheel-smooth-scroll.php ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Plugin Name: MouseWheel Smooth Scroll
4
+ Plugin URI: http://kubiq.sk
5
+ Description: MouseWheel smooth scrolling for your WordPress website
6
+ Version: 1.0.2
7
+ Author: Jakub Novák
8
+ Author URI: http://kubiq.sk
9
+ */
10
+
11
+ if (!class_exists('wpmss')) {
12
+ class wpmss {
13
+ var $domain = 'wpmss';
14
+ var $plugin_admin_page;
15
+ var $settings;
16
+ var $tab;
17
+
18
+ function wpmss_func(){ $this->__construct(); }
19
+
20
+ function __construct(){
21
+ // translating strings
22
+ $mo = plugin_dir_path(__FILE__) . 'languages/' . $this->domain . '-' . get_locale() . '.mo';
23
+ load_textdomain($this->domain, $mo);
24
+ // add plugin to menu
25
+ add_action( 'admin_menu', array( &$this, 'plugin_menu_link' ) );
26
+ // action on plugin initializing
27
+ add_action( 'init', array( &$this, "plugin_init" ) );
28
+ }
29
+
30
+ function filter_plugin_actions($links, $file) {
31
+ $settings_link = '<a href="options-general.php?page=' . basename(__FILE__) . '">' . __('Settings') . '</a>';
32
+ array_unshift( $links, $settings_link );
33
+ return $links;
34
+ }
35
+
36
+ function plugin_menu_link() {
37
+ $this->plugin_admin_page = add_submenu_page(
38
+ 'options-general.php',
39
+ __( 'MouseWheel Smooth Scroll', $this->domain ),
40
+ __( 'MouseWheel Smooth Scroll', $this->domain ),
41
+ 'manage_options',
42
+ basename(__FILE__),
43
+ array( $this, 'admin_options_page' )
44
+ );
45
+ add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), array($this, 'filter_plugin_actions'), 10, 2 );
46
+ }
47
+
48
+ function plugin_init(){
49
+ $this->settings = get_option('wpmss_settings');
50
+ add_action( 'wp_enqueue_scripts', array($this, 'plugin_scripts_load') );
51
+ }
52
+
53
+ function plugin_scripts_load() {
54
+ wp_enqueue_script( 'wpmss_jquery_browser', plugins_url( 'js/jquery.browser.min.js' , __FILE__ ));
55
+ wp_enqueue_script( 'wpmss_jquery_mousewheel', plugins_url( 'js/jquery.mousewheel.min.js' , __FILE__ ));
56
+ wp_enqueue_script( 'wpmss_jquery_easing', plugins_url( 'js/jquery.easing.1.3.js' , __FILE__ ));
57
+ $options = array(
58
+ 'step' => isset( $this->settings['general']['step'] ) && trim( $this->settings['general']['step'] ) != "" ? $this->settings['general']['step'] : 120,
59
+ 'speed' => isset( $this->settings['general']['speed'] ) && trim( $this->settings['general']['step'] ) != "" ? $this->settings['general']['speed'] : 800,
60
+ 'ease' => isset( $this->settings['general']['ease'] ) ? $this->settings['general']['ease'] : 'easeOutCubic',
61
+ 'enableAll' => isset( $this->settings['general']['enable_mac'] ) ? 1 : 0
62
+ );
63
+ wp_enqueue_script( 'wpmss_simplr_smoothscroll', plugins_url( 'js/jquery.simplr.smoothscroll.js' , __FILE__ ));
64
+ wp_enqueue_script( 'wpmss_script', plugins_url( 'js/wpmss.php?'.http_build_query($options) , __FILE__ ));
65
+ }
66
+
67
+ function plugin_admin_tabs( $current = 'general' ) {
68
+ $tabs = array( 'general' => __('General'), 'info' => __('Help') ); ?>
69
+ <h2 class="nav-tab-wrapper">
70
+ <?php foreach( $tabs as $tab => $name ){ ?>
71
+ <a class="nav-tab <?php echo ( $tab == $current ) ? "nav-tab-active" : "" ?>" href="?page=<?php echo basename(__FILE__) ?>&amp;tab=<?php echo $tab ?>"><?php echo $name ?></a>
72
+ <?php } ?>
73
+ </h2><br><?php
74
+ }
75
+
76
+ function admin_options_page() {
77
+ // check if this is plugin admin page
78
+ if ( get_current_screen()->id != $this->plugin_admin_page ) return;
79
+ // get current tab
80
+ $this->tab = ( isset( $_GET['tab'] ) ) ? $_GET['tab'] : 'general';
81
+ if(isset($_POST['plugin_sent'])) $this->settings[ $this->tab ] = $_POST;
82
+ update_option( "wpmss_settings", $this->settings );
83
+ // display content ?>
84
+ <div class="wrap">
85
+ <h2><?php _e( 'MouseWheel Smooth Scroll', $this->domain ); ?></h2>
86
+ <?php if(isset($_POST['plugin_sent'])) echo '<div id="message" class="below-h2 updated"><p>'.__( 'Settings saved.' ).'</p></div>'; ?>
87
+ <form method="post" action="<?php admin_url( 'options-general.php?page=' . basename(__FILE__) ); ?>">
88
+ <input type="hidden" name="plugin_sent" value="1"><?php
89
+ $this->plugin_admin_tabs( $this->tab );
90
+ switch ( $this->tab ) :
91
+ case 'general' :
92
+ $this->plugin_general_options();
93
+ break;
94
+ case 'info' :
95
+ $this->plugin_info_options();
96
+ break;
97
+ endswitch; ?>
98
+ </form>
99
+ </div><?php
100
+ }
101
+
102
+ function plugin_general_options(){ ?>
103
+ <table class="form-table">
104
+ <tr>
105
+ <th>
106
+ <label for="q_field_1"><?php _e("Step:", $this->domain) ?></label> 
107
+ </th>
108
+ <td>
109
+ <input type="text" name="step" placeholder="120" value="<?php echo $this->settings[ $this->tab ]["step"]; ?>" id="q_field_1">
110
+ </td>
111
+ </tr>
112
+ <tr>
113
+ <th>
114
+ <label for="q_field_2"><?php _e("Speed:", $this->domain) ?></label> 
115
+ </th>
116
+ <td>
117
+ <input type="text" name="speed" placeholder="800" value="<?php echo $this->settings[ $this->tab ]["speed"]; ?>" id="q_field_2">
118
+ </td>
119
+ </tr>
120
+ <tr>
121
+ <th>
122
+ <label for="q_field_3"><?php _e("Ease:", $this->domain) ?></label> 
123
+ </th>
124
+ <td><?php
125
+ $this->q_select(array(
126
+ "name" => "ease",
127
+ "id" => "q_field_3",
128
+ "value" => isset( $this->settings[ $this->tab ]["ease"] ) ? $this->settings[ $this->tab ]["ease"] : 'easeOutCubic',
129
+ "options" => array(
130
+ 'linear' => 'linear',
131
+ 'swing' => 'swing',
132
+ 'easeInQuad' => 'easeInQuad',
133
+ 'easeOutQuad' => 'easeOutQuad',
134
+ 'easeInOutQuad' => 'easeInOutQuad',
135
+ 'easeInCubic' => 'easeInCubic',
136
+ 'easeOutCubic' => 'easeOutCubic',
137
+ 'easeInOutCubic' => 'easeInOutCubic',
138
+ 'easeInQuart' => 'easeInQuart',
139
+ 'easeOutQuart' => 'easeOutQuart',
140
+ 'easeInOutQuart' => 'easeInOutQuart',
141
+ 'easeInQuint' => 'easeInQuint',
142
+ 'easeOutQuint' => 'easeOutQuint',
143
+ 'easeInOutQuint' => 'easeInOutQuint',
144
+ 'easeInExpo' => 'easeInExpo',
145
+ 'easeOutExpo' => 'easeOutExpo',
146
+ 'easeInOutExpo' => 'easeInOutExpo',
147
+ 'easeInSine' => 'easeInSine',
148
+ 'easeOutSine' => 'easeOutSine',
149
+ 'easeInOutSine' => 'easeInOutSine',
150
+ 'easeInCirc' => 'easeInCirc',
151
+ 'easeOutCirc' => 'easeOutCirc',
152
+ 'easeInOutCirc' => 'easeInOutCirc',
153
+ 'easeInElastic' => 'easeInElastic',
154
+ 'easeOutElastic' => 'easeOutElastic',
155
+ 'easeInOutElastic' => 'easeInOutElastic',
156
+ 'easeInBack' => 'easeInBack',
157
+ 'easeOutBack' => 'easeOutBack',
158
+ 'easeInOutBack' => 'easeInOutBack',
159
+ 'easeInBounce' => 'easeInBounce',
160
+ 'easeOutBounce' => 'easeOutBounce',
161
+ 'easeInOutBounce' => 'easeInOutBounce'
162
+ )
163
+ )); ?>&emsp;<small><a href="http://easings.net/" target="_blank">(<?php _e("try easings", $this->domain) ?>)</a></small>
164
+ </td>
165
+ </tr>
166
+ <tr>
167
+ <th>
168
+ <label for="q_field_4"><?php _e("Enable for MAC and non-WebKit browsers (experimental)", $this->domain) ?></label> 
169
+ </th>
170
+ <td>
171
+ <input type="checkbox" name="enable_mac" value="checked" id="q_field_4" <?php echo isset( $this->settings[ $this->tab ]["enable_mac"] ) ? $this->settings[ $this->tab ]["enable_mac"] : "" ?>>
172
+ </td>
173
+ </tr>
174
+ </table>
175
+ <p class="submit"><input type="submit" class="button button-primary button-large" value="<?php _e( 'Save' ) ?>"></p><?php
176
+ }
177
+
178
+ function plugin_info_options(){ ?>
179
+ <p><?php _e('Any ideas, problems, issues?', $this->domain) ?></p>
180
+ <p>Ing. Jakub Novák</p>
181
+ <p><a href="mailto:info@kubiq.sk" target="_blank">info@kubiq.sk</a></p>
182
+ <p><a href="https://kubiq.sk/" target="_blank">https://kubiq.sk</a></p><?php
183
+ }
184
+
185
+ function q_select( $field_data = array(), $print = 1 ){
186
+ if(!is_object($field_data)) $field_data = (object)$field_data;
187
+ $field_data->value = is_array($field_data->value) ? $field_data->value : array($field_data->value);
188
+ $select = "<select name='{$field_data->name}' id='{$field_data->id}'".( isset($field_data->multiple) ? " multiple" : "").( isset($field_data->size) ? " size='{$field_data->size}'" : "").">";
189
+ if( isset($field_data->placeholder) ) $select .= "<option value='' disabled>{$field_data->placeholder}</option>";
190
+ foreach($field_data->options as $option => $value) $select .= "<option value='{$value}'".( in_array($value, $field_data->value) ? " selected" : "").">{$option}</option>";
191
+ $select .= "</select>";
192
+ if($print)
193
+ echo $select;
194
+ else
195
+ return $select;
196
+ }
197
+ }
198
+ }
199
+
200
+ if (class_exists('wpmss')) {
201
+ $wpmss_var = new wpmss();
202
+ } ?>
readme.txt ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === Plugin Name ===
2
+ Contributors: kubiq
3
+ Donate link: http://kubiq.sk
4
+ Tags: smooth scroll, mousewheel scroll, scrolling
5
+ Requires at least: 3.0.1
6
+ Tested up to: 4.1
7
+ Stable tag: 1.0.2
8
+ License: GPLv2 or later
9
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
+
11
+ Smooth scrolling experience, with mousewheel or touchpad
12
+
13
+ == Description ==
14
+
15
+ Replace basic scrolling "efect" on Windows, Linux and some browsers with nice smooth scroll
16
+
17
+ <ul>
18
+ <li>set speed</li>
19
+ <li>set step</li>
20
+ <li>set ease</li>
21
+ <li>enable / disable on Mac (which already has smooth scroll)</li>
22
+ </ul>
23
+
24
+ == Installation ==
25
+
26
+ 1. Upload `mousewheel-smooth-scroll` directory to the `/wp-content/plugins/` directory
27
+ 2. Activate the plugin through the 'Plugins' menu in WordPress
28
+ 3. Manage your settings in 'Settings >> Mousewheel Smooth Scroll'
29
+
30
+ == Screenshots ==
31
+
32
+ 1. Plugin settings
33
+
34
+ == Changelog ==
35
+
36
+ = 1.0 =
37
+ * First version
38
+
39
+ = 1.0.1 =
40
+ * Optimalisation
41
+
42
+ = 1.0.2 =
43
+ * Improve / change default settings