fix some warnings & update package
parent
e77851ef60
commit
ce89acecb1
|
@ -8,8 +8,8 @@ module.exports = function(grunt) {
|
||||||
|
|
||||||
grunt.initConfig({
|
grunt.initConfig({
|
||||||
pkg: require('./package.json'),
|
pkg: require('./package.json'),
|
||||||
banner: '/*! Social Likes v<%= pkg.version %> by Artem Sapegin - ' +
|
banner: '/*! Social Likes v<%= pkg.version %> by Artem Sapegin / Vitaliy Filippov no-jquery - ' +
|
||||||
'http://sapegin.github.com/social-likes - Licensed MIT */\n',
|
'http://github.com/vitalif/social-likes - Licensed MIT */\n',
|
||||||
jshint: {
|
jshint: {
|
||||||
options: {
|
options: {
|
||||||
jshintrc: 'src/.jshintrc'
|
jshintrc: 'src/.jshintrc'
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -41,7 +41,7 @@
|
||||||
"grunt-contrib-uglify": "~0.6.0",
|
"grunt-contrib-uglify": "~0.6.0",
|
||||||
"grunt-contrib-watch": "~0.6.1",
|
"grunt-contrib-watch": "~0.6.1",
|
||||||
"grunt-csso": "~0.6.3",
|
"grunt-csso": "~0.6.3",
|
||||||
"grunt-jscs-checker": "~0.7.1",
|
"grunt-jscs": "~0.8.1",
|
||||||
"grunt-modernizr": "~1.0.1",
|
"grunt-modernizr": "~1.0.1",
|
||||||
"grunt-replace": "~0.11.0",
|
"grunt-replace": "~0.11.0",
|
||||||
"grunt-sweet": "~0.2.2",
|
"grunt-sweet": "~0.2.2",
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
{
|
{
|
||||||
"requireCurlyBraces": ["for", "while", "do"],
|
|
||||||
"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return"],
|
"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return"],
|
||||||
"requireParenthesesAroundIIFE": true,
|
"requireParenthesesAroundIIFE": true,
|
||||||
"requireSpacesInFunctionExpression": { "beforeOpeningCurlyBrace": true },
|
"requireSpacesInFunctionExpression": { "beforeOpeningCurlyBrace": true },
|
||||||
"disallowSpacesInFunctionExpression": { "beforeOpeningRoundBrace": true },
|
"disallowSpacesInFunctionExpression": { "beforeOpeningRoundBrace": true },
|
||||||
"disallowMultipleVarDecl": true,
|
|
||||||
"disallowSpacesInsideObjectBrackets": true,
|
|
||||||
"disallowSpacesInsideArrayBrackets": true,
|
|
||||||
"disallowSpacesInsideParentheses": true,
|
"disallowSpacesInsideParentheses": true,
|
||||||
"disallowSpaceAfterObjectKeys": true,
|
"disallowSpaceAfterObjectKeys": true,
|
||||||
"requireCommaBeforeLineBreak": true,
|
"requireCommaBeforeLineBreak": true,
|
||||||
|
@ -26,7 +22,7 @@
|
||||||
"requireKeywordsOnNewLine": ["else"],
|
"requireKeywordsOnNewLine": ["else"],
|
||||||
"requireLineFeedAtFileEnd": true,
|
"requireLineFeedAtFileEnd": true,
|
||||||
"maximumLineLength": 140,
|
"maximumLineLength": 140,
|
||||||
"safeContextKeyword": "that",
|
"safeContextKeyword": "self",
|
||||||
"requireDotNotation": true,
|
"requireDotNotation": true,
|
||||||
"validateJSDoc": {
|
"validateJSDoc": {
|
||||||
"checkParamNames": true,
|
"checkParamNames": true,
|
||||||
|
|
|
@ -2,13 +2,17 @@
|
||||||
"browser": true,
|
"browser": true,
|
||||||
"white": false,
|
"white": false,
|
||||||
"smarttabs": true,
|
"smarttabs": true,
|
||||||
"eqeqeq": true,
|
"eqeqeq": false,
|
||||||
"immed": true,
|
"immed": true,
|
||||||
"latedef": true,
|
"latedef": true,
|
||||||
"newcap": true,
|
"newcap": true,
|
||||||
"undef": true,
|
"undef": true,
|
||||||
"jquery": true,
|
"jquery": false,
|
||||||
"globals": {
|
"globals": {
|
||||||
"Modernizr": true
|
"http_build_query": true,
|
||||||
|
"addListener": true,
|
||||||
|
"removeListener": true,
|
||||||
|
"onDomReady": true,
|
||||||
|
"GET": true
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -5,10 +5,11 @@
|
||||||
* Sharing buttons for Russian and worldwide social networks.
|
* Sharing buttons for Russian and worldwide social networks.
|
||||||
* jQuery removed, only requires simple utilities: GET, onDomReady, http_build_query, addListener, removeListener
|
* jQuery removed, only requires simple utilities: GET, onDomReady, http_build_query, addListener, removeListener
|
||||||
*
|
*
|
||||||
* @author Artem Sapegin
|
* @author Artem Sapegin, Vitaliy Filippov
|
||||||
* @copyright 2014 Artem Sapegin (sapegin.me)
|
* @copyright 2014 Artem Sapegin (sapegin.me), 2016 Vitaliy Filippov
|
||||||
* @license MIT
|
* @license MIT
|
||||||
*/
|
*/
|
||||||
|
/*jshint -W030 */
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
@ -21,19 +22,18 @@
|
||||||
|
|
||||||
function hasClass(e, cls, remove)
|
function hasClass(e, cls, remove)
|
||||||
{
|
{
|
||||||
var p = -1;
|
var p = -1, r = false;
|
||||||
while ((p = e.className.indexOf(cls, p+1)) != -1)
|
while ((p = e.className.indexOf(cls, p+1)) != -1)
|
||||||
{
|
{
|
||||||
if ((!p || /\s/.exec(e.className.charAt(p-1))) &&
|
if ((!p || /\s/.exec(e.className.charAt(p-1))) &&
|
||||||
(p == e.className.length-cls.length || /\s/.exec(e.className.charAt(p+cls.length))))
|
(p == e.className.length-cls.length || /\s/.exec(e.className.charAt(p+cls.length))))
|
||||||
{
|
{
|
||||||
|
r = true;
|
||||||
if (remove)
|
if (remove)
|
||||||
e.className = e.className.substr(0, p-1)+e.className.substr(p+cls.length);
|
e.className = e.className.substr(0, p-1)+e.className.substr(p+cls.length);
|
||||||
else
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return r;
|
||||||
}
|
}
|
||||||
function getScript(url, onsuccess, onerror)
|
function getScript(url, onsuccess, onerror)
|
||||||
{
|
{
|
||||||
|
@ -110,7 +110,7 @@
|
||||||
|
|
||||||
var index = options._.length;
|
var index = options._.length;
|
||||||
options._.push(deferred);
|
options._.push(deferred);
|
||||||
getScript(makeUrl(jsonUrl, {index: index}), null, function() { deferred.reject() });
|
getScript(makeUrl(jsonUrl, {index: index}), null, function() { deferred.reject(); });
|
||||||
},
|
},
|
||||||
popupUrl: 'https://vk.com/share.php?url={url}&title={title}',
|
popupUrl: 'https://vk.com/share.php?url={url}&title={title}',
|
||||||
popupWidth: 655,
|
popupWidth: 655,
|
||||||
|
@ -130,7 +130,7 @@
|
||||||
|
|
||||||
var index = options._.length;
|
var index = options._.length;
|
||||||
options._.push(deferred);
|
options._.push(deferred);
|
||||||
getScript(makeUrl(jsonUrl, {index: index}), null, function() { deferred.reject() });
|
getScript(makeUrl(jsonUrl, {index: index}), null, function() { deferred.reject(); });
|
||||||
},
|
},
|
||||||
popupUrl: 'https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl={url}',
|
popupUrl: 'https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl={url}',
|
||||||
popupWidth: 580,
|
popupWidth: 580,
|
||||||
|
@ -166,14 +166,14 @@
|
||||||
if (!counters.promises[service]) counters.promises[service] = {};
|
if (!counters.promises[service]) counters.promises[service] = {};
|
||||||
var servicePromises = counters.promises[service];
|
var servicePromises = counters.promises[service];
|
||||||
|
|
||||||
if (!extraOptions.forceUpdate && servicePromises[url]) {
|
if (!extraOptions.forceUpdate && servicePromises[url])
|
||||||
return servicePromises[url];
|
return servicePromises[url];
|
||||||
}
|
else
|
||||||
else {
|
{
|
||||||
var options = {};
|
var options = {};
|
||||||
for (var i in services[service])
|
for (var i in services[service])
|
||||||
options[i] = services[service][i];
|
options[i] = services[service][i];
|
||||||
for (var i in extraOptions)
|
for (i in extraOptions)
|
||||||
options[i] = extraOptions[i];
|
options[i] = extraOptions[i];
|
||||||
var deferred = { resolve: function(v) {}, reject: function() {} };
|
var deferred = { resolve: function(v) {}, reject: function() {} };
|
||||||
var jsonUrl = options.counterUrl && makeUrl(options.counterUrl, {url: url});
|
var jsonUrl = options.counterUrl && makeUrl(options.counterUrl, {url: url});
|
||||||
|
@ -192,7 +192,7 @@
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (typeof options.convertNumber == 'function')
|
if (typeof options.convertNumber == 'function')
|
||||||
number = options.convertNumber(data);
|
number = options.convertNumber(number);
|
||||||
deferred.resolve(number);
|
deferred.resolve(number);
|
||||||
}
|
}
|
||||||
catch (e)
|
catch (e)
|
||||||
|
@ -226,9 +226,9 @@
|
||||||
var c = {}, o = dataToOptions(element);
|
var c = {}, o = dataToOptions(element);
|
||||||
for (var i in window.socialLikes.defaults)
|
for (var i in window.socialLikes.defaults)
|
||||||
c[i] = window.socialLikes.defaults[i];
|
c[i] = window.socialLikes.defaults[i];
|
||||||
for (var i in options)
|
for (i in options)
|
||||||
c[i] = options[i];
|
c[i] = options[i];
|
||||||
for (var i in o)
|
for (i in o)
|
||||||
c[i] = o[i];
|
c[i] = o[i];
|
||||||
instance = new SocialLikes(element, c);
|
instance = new SocialLikes(element, c);
|
||||||
element['__'+prefix] = instance;
|
element['__'+prefix] = instance;
|
||||||
|
@ -281,18 +281,18 @@
|
||||||
|
|
||||||
if (this.options.counters)
|
if (this.options.counters)
|
||||||
{
|
{
|
||||||
this.timer = setTimeout(function() { self.appear() }, this.options.wait);
|
this.timer = setTimeout(function() { self.appear(); }, this.options.wait);
|
||||||
this.timeout = setTimeout(function() { self.ready() }, this.options.timeout);
|
this.timeout = setTimeout(function() { self.ready(); }, this.options.timeout);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
this.appear();
|
this.appear();
|
||||||
},
|
},
|
||||||
initUserButtons: function() {
|
initUserButtons: function() {
|
||||||
if (!this.userButtonInited && window.socialLikesButtons) {
|
if (!this.userButtonInited && window.socialLikesButtons) {
|
||||||
for (var i in socialLikesButtons) {
|
for (var i in window.socialLikesButtons) {
|
||||||
services[i] = services[i] || {};
|
services[i] = services[i] || {};
|
||||||
for (var j in socialLikesButtons[i])
|
for (var j in window.socialLikesButtons[i])
|
||||||
services[i][j] = socialLikesButtons[i][j];
|
services[i][j] = window.socialLikesButtons[i][j];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.userButtonInited = true;
|
this.userButtonInited = true;
|
||||||
|
@ -322,7 +322,7 @@
|
||||||
|
|
||||||
addListener(widget, 'click', function() {
|
addListener(widget, 'click', function() {
|
||||||
var activeClass = prefix+'__widget_active';
|
var activeClass = prefix+'__widget_active';
|
||||||
if (!hasClass(widget, activeClass)) {
|
if (!hasClass(widget, activeClass, true)) {
|
||||||
widget.className += ' '+activeClass;
|
widget.className += ' '+activeClass;
|
||||||
container.style.left = ((widget.offsetWidth-container.offsetWidth)/2)+'px';
|
container.style.left = ((widget.offsetWidth-container.offsetWidth)/2)+'px';
|
||||||
container.style.top = -container.offsetHeight+'px';
|
container.style.top = -container.offsetHeight+'px';
|
||||||
|
@ -332,7 +332,6 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
widget.className = widget.className.substr(0, i);
|
|
||||||
hasClass(container, openClass, true);
|
hasClass(container, openClass, true);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -415,7 +414,7 @@
|
||||||
this.detectParams();
|
this.detectParams();
|
||||||
this.initHtml();
|
this.initHtml();
|
||||||
var self = this;
|
var self = this;
|
||||||
setTimeout(function() { self.initCounter() }, 0);
|
setTimeout(function() { self.initCounter(); }, 0);
|
||||||
},
|
},
|
||||||
|
|
||||||
update: function(options) {
|
update: function(options) {
|
||||||
|
@ -495,7 +494,7 @@
|
||||||
this.widget = widget = link;
|
this.widget = widget = link;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
addListener(widget, 'click', function() { self.click() });
|
addListener(widget, 'click', function() { self.click(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
widget.className = widget.className.replace(' '+this.service, '') + ' '+this.getElementClassNames('widget');
|
widget.className = widget.className.replace(' '+this.service, '') + ' '+this.getElementClassNames('widget');
|
||||||
|
@ -522,7 +521,7 @@
|
||||||
};
|
};
|
||||||
var self = this;
|
var self = this;
|
||||||
var r = counters.fetch(this.service, this.options.url, extraOptions);
|
var r = counters.fetch(this.service, this.options.url, extraOptions);
|
||||||
r.reject = r.resolve = function(n) { self.updateCounter(n) };
|
r.reject = r.resolve = function(n) { self.updateCounter(n); };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -541,9 +540,10 @@
|
||||||
number = parseInt(number, 10) || 0;
|
number = parseInt(number, 10) || 0;
|
||||||
|
|
||||||
var counterElem = document.createElement('span');
|
var counterElem = document.createElement('span');
|
||||||
if (!number && !this.options.zeroes) {
|
if (!number && !this.options.zeroes)
|
||||||
counterElem.className = this.getElementClassNames('counter') + ' ' + prefix + '__counter_empty';
|
counterElem.className = this.getElementClassNames('counter') + ' ' + prefix + '__counter_empty';
|
||||||
} else {
|
else
|
||||||
|
{
|
||||||
counterElem.innerHTML = number;
|
counterElem.innerHTML = number;
|
||||||
counterElem.className = this.getElementClassNames('counter');
|
counterElem.className = this.getElementClassNames('counter');
|
||||||
}
|
}
|
||||||
|
@ -578,7 +578,7 @@
|
||||||
for (var i in this.options.data)
|
for (var i in this.options.data)
|
||||||
params[i] = this.options.data[i];
|
params[i] = this.options.data[i];
|
||||||
var s = '';
|
var s = '';
|
||||||
for (var i in params)
|
for (i in params)
|
||||||
s += '&'+encodeURIComponent(i)+'='+encodeURIComponent(params[i]);
|
s += '&'+encodeURIComponent(i)+'='+encodeURIComponent(params[i]);
|
||||||
if (!s)
|
if (!s)
|
||||||
return url;
|
return url;
|
||||||
|
@ -705,6 +705,6 @@
|
||||||
onDomReady(function() {
|
onDomReady(function() {
|
||||||
var es = document.querySelectorAll('.' + prefix);
|
var es = document.querySelectorAll('.' + prefix);
|
||||||
for (var i = 0; i < es.length; i++)
|
for (var i = 0; i < es.length; i++)
|
||||||
socialLikes(es[i]);
|
window.socialLikes(es[i]);
|
||||||
});
|
});
|
||||||
})();
|
})();
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue