diff --git a/application/controllers/Measures.php b/application/controllers/Measures.php index 7711da93..f74cb47e 100644 --- a/application/controllers/Measures.php +++ b/application/controllers/Measures.php @@ -190,7 +190,7 @@ public function get_accuracy() { $this->event->add(ACCURACY_LOAD); $this->_headerData['headerClass'] = 'blue'; - array_push($this->_headerData['javaScripts'], "jquery.sharrre.min", "sharrre.logic", "watch.animation"); + array_push($this->_headerData['javaScripts'], "watch.animation"); $this->load->view('header', $this->_headerData); $this->_bodyData['selectedWatch'] = $this->watch->getWatch($this->input->post('watchId')); @@ -285,12 +285,12 @@ function accuracyMeasure() { $watchMeasure = $this->measure->addAccuracyMesure( $this->input->post('measureId'), $referenceTime, $userTime); - //We store the computed accuracy - $result['accuracy'] = $watchMeasure->accuracy; - // If the computed accuracy makes sense, we return success if (is_numeric($watchMeasure->accuracy)) { $result['success'] = true; + //We store the computed accuracy & percentile + $result['accuracy'] = $watchMeasure->accuracy; + $result['percentile'] = $watchMeasure->percentile; } else { $result['success'] = false; } diff --git a/application/models/Measure.php b/application/models/Measure.php index b184715e..75defcc5 100644 --- a/application/models/Measure.php +++ b/application/models/Measure.php @@ -102,6 +102,31 @@ public function computeAccuracy($watchMeasure) { return $watchMeasure; } + /** + * Computes the percentile for an accuracy, i.e, the percentage + * of watches that are less accurate than $accuracy. + * + * The percentile excludes bugged measure (+/- 300 spd) + * + * @param float $accuracy A complete measure with computed + * @return int the percentile for this accuracy. + */ + function computePercentileAccuracy($accuracy){ + + //This have to be kept in line with the computeAccuracy method + $precisionFormulae = 'ABS(((measure.accuracyUserTime + - measure.measureUserTime)*86400)/ + (measure.accuracyReferenceTime - measure.measureReferenceTime) + -86400)'; + + $moreAccurateCount = $this->count_by($precisionFormulae . ' <', + abs($accuracy)); + + $valideMeasuresCount = $this->count_by($precisionFormulae . ' <', 300); + + return round(100 - (($moreAccurateCount / $valideMeasuresCount) * 100)); + } + /** * Add a base measure (1/2) to $watchId given $referenceTime and $userTime * @@ -155,6 +180,9 @@ function addAccuracyMesure($measureId, $referenceTime, $userTime) { $this->notify(NEW_ACCURACY, array('measure' => $watchMeasure)); + $watchMeasure->percentile = + $this->computePercentileAccuracy($watchMeasure->accuracy); + return $watchMeasure; } diff --git a/application/tests/models/Measure_test.php b/application/tests/models/Measure_test.php index b2b44670..2b8365f7 100644 --- a/application/tests/models/Measure_test.php +++ b/application/tests/models/Measure_test.php @@ -262,6 +262,13 @@ public function test_getMeasuresCountByWatchBrand() { $this->assertEquals(6, $count); } + public function test_computePercentileAccuracy(){ + + $this->assertEquals(67, $this->obj->computePercentileAccuracy(1.5)); + $this->assertEquals(0, $this->obj->computePercentileAccuracy(7)); + + } + } ?> diff --git a/application/views/measure/get-accuracy.php b/application/views/measure/get-accuracy.php index a9848730..3a9a18c3 100644 --- a/application/views/measure/get-accuracy.php +++ b/application/views/measure/get-accuracy.php @@ -8,7 +8,7 @@
- +
At the end of the countdown, please enter below the exact time as it is on your watch.
Let's check the accuracy of your watch! @@ -43,43 +43,64 @@
-
@@ -97,4 +118,4 @@
- \ No newline at end of file + diff --git a/assets/img/email-share.png b/assets/img/email-share.png new file mode 100755 index 00000000..0c01cc35 Binary files /dev/null and b/assets/img/email-share.png differ diff --git a/assets/img/facebook.png b/assets/img/facebook.png new file mode 100755 index 00000000..9f9ec631 Binary files /dev/null and b/assets/img/facebook.png differ diff --git a/assets/img/google-plus.png b/assets/img/google-plus.png new file mode 100755 index 00000000..87b8b1f6 Binary files /dev/null and b/assets/img/google-plus.png differ diff --git a/assets/img/tweet.png b/assets/img/tweet.png new file mode 100755 index 00000000..990b94ce Binary files /dev/null and b/assets/img/tweet.png differ diff --git a/assets/js/application.js b/assets/js/application.js index eefdf199..b9e3b633 100644 --- a/assets/js/application.js +++ b/assets/js/application.js @@ -308,14 +308,12 @@ $(document).ready(function() } $('.watch-accuracy').html(result.accuracy); - + $('.watch-percentile').html(result.percentile); $('.share-button').each(function(index){ - $(this).attr("data-text", $(this).attr("data-text").replace("{WatchAccuracy}", result.accuracy)); + $(this).attr("href", $(this).attr("href").replace("{WatchPercentile}", result.percentile)); }); - initShareButton(); - } } else diff --git a/assets/js/jquery.sharrre.min.js b/assets/js/jquery.sharrre.min.js deleted file mode 100644 index 50b5cf2a..00000000 --- a/assets/js/jquery.sharrre.min.js +++ /dev/null @@ -1,586 +0,0 @@ -/*! - * Sharrre.com - Make your sharing widget! - * Version: beta 1.3.5 - * Author: Julien Hany - * License: MIT http://en.wikipedia.org/wiki/MIT_License or GPLv2 http://en.wikipedia.org/wiki/GNU_General_Public_License - */ - -;(function ( $, window, document, undefined ) { - - /* Defaults - ================================================== */ - var pluginName = 'sharrre', - defaults = { - className: 'sharrre', - share: { - googlePlus: false, - facebook: false, - twitter: false, - digg: false, - delicious: false, - stumbleupon: false, - linkedin: false, - pinterest: false - }, - shareTotal: 0, - template: '', - title: '', - url: document.location.href, - text: document.title, - urlCurl: 'sharrre.php', //PHP script for google plus... - count: {}, //counter by social network - total: 0, //total of sharing - shorterTotal: true, //show total by k or M when number is to big - enableHover: true, //disable if you want to personalize hover event with callback - enableCounter: true, //disable if you just want use buttons - enableTracking: false, //tracking with google analitycs - hover: function(){}, //personalize hover event with this callback function - hide: function(){}, //personalize hide event with this callback function - click: function(){}, //personalize click event with this callback function - render: function(){}, //personalize render event with this callback function - buttons: { //settings for buttons - googlePlus : { //http://www.google.com/webmasters/+1/button/ - url: '', //if you need to personnalize button url - urlCount: false, //if you want to use personnalize button url on global counter - size: 'medium', - lang: 'en-US', - annotation: '' - }, - facebook: { //http://developers.facebook.com/docs/reference/plugins/like/ - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - action: 'like', - layout: 'button_count', - width: '', - send: 'false', - faces: 'false', - colorscheme: '', - font: '', - lang: 'en_US' - }, - twitter: { //http://twitter.com/about/resources/tweetbutton - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - count: 'horizontal', - hashtags: '', - via: '', - related: '', - lang: 'en' - }, - digg: { //http://about.digg.com/downloads/button/smart - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - type: 'DiggCompact' - }, - delicious: { - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - size: 'medium' //medium or tall - }, - stumbleupon: { //http://www.stumbleupon.com/badges/ - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - layout: '1' - }, - linkedin: { //http://developer.linkedin.com/plugins/share-button - url: '', //if you need to personalize url button - urlCount: false, //if you want to use personnalize button url on global counter - counter: '' - }, - pinterest: { //http://pinterest.com/about/goodies/ - url: '', //if you need to personalize url button - media: '', - description: '', - layout: 'horizontal' - } - } - }, - /* Json URL to get count number - ================================================== */ - urlJson = { - googlePlus: "", - - //new FQL method by Sire - facebook: "https://graph.facebook.com/fql?q=SELECT%20url,%20normalized_url,%20share_count,%20like_count,%20comment_count,%20total_count,commentsbox_count,%20comments_fbid,%20click_count%20FROM%20link_stat%20WHERE%20url=%27{url}%27&callback=?", - //old method facebook: "http://graph.facebook.com/?id={url}&callback=?", - //facebook : "http://api.ak.facebook.com/restserver.php?v=1.0&method=links.getStats&urls={url}&format=json" - - twitter: "http://cdn.api.twitter.com/1/urls/count.json?url={url}&callback=?", - digg: "http://services.digg.com/2.0/story.getInfo?links={url}&type=javascript&callback=?", - delicious: 'http://feeds.delicious.com/v2/json/urlinfo/data?url={url}&callback=?', - //stumbleupon: "http://www.stumbleupon.com/services/1.01/badge.getinfo?url={url}&format=jsonp&callback=?", - stumbleupon: "", - linkedin: "http://www.linkedin.com/countserv/count/share?format=jsonp&url={url}&callback=?", - pinterest: "http://api.pinterest.com/v1/urls/count.json?url={url}&callback=?" - }, - /* Load share buttons asynchronously - ================================================== */ - loadButton = { - googlePlus : function(self){ - var sett = self.options.buttons.googlePlus; - //$(self.element).find('.buttons').append('
'); - $(self.element).find('.buttons').append('
'); - window.___gcfg = { - lang: self.options.buttons.googlePlus.lang - }; - var loading = 0; - if(typeof gapi === 'undefined' && loading == 0){ - loading = 1; - (function() { - var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; - po.src = '//apis.google.com/js/plusone.js'; - var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); - })(); - } - else{ - gapi.plusone.go(); - } - }, - facebook : function(self){ - var sett = self.options.buttons.facebook; - $(self.element).find('.buttons').append('
'); - var loading = 0; - if(typeof FB === 'undefined' && loading == 0){ - loading = 1; - (function(d, s, id) { - var js, fjs = d.getElementsByTagName(s)[0]; - if (d.getElementById(id)) {return;} - js = d.createElement(s); js.id = id; - js.src = '//connect.facebook.net/'+sett.lang+'/all.js#xfbml=1'; - fjs.parentNode.insertBefore(js, fjs); - }(document, 'script', 'facebook-jssdk')); - } - else{ - FB.XFBML.parse(); - } - }, - twitter : function(self){ - var sett = self.options.buttons.twitter; - $(self.element).find('.buttons').append('
Tweet
'); - var loading = 0; - if(typeof twttr === 'undefined' && loading == 0){ - loading = 1; - (function() { - var twitterScriptTag = document.createElement('script'); - twitterScriptTag.type = 'text/javascript'; - twitterScriptTag.async = true; - twitterScriptTag.src = '//platform.twitter.com/widgets.js'; - var s = document.getElementsByTagName('script')[0]; - s.parentNode.insertBefore(twitterScriptTag, s); - })(); - } - else{ - $.ajax({ url: '//platform.twitter.com/widgets.js', dataType: 'script', cache:true}); //http://stackoverflow.com/q/6536108 - } - }, - digg : function(self){ - var sett = self.options.buttons.digg; - $(self.element).find('.buttons').append('
'); - var loading = 0; - if(typeof __DBW === 'undefined' && loading == 0){ - loading = 1; - (function() { - var s = document.createElement('SCRIPT'), s1 = document.getElementsByTagName('SCRIPT')[0]; - s.type = 'text/javascript'; - s.async = true; - s.src = '//widgets.digg.com/buttons.js'; - s1.parentNode.insertBefore(s, s1); - })(); - } - }, - delicious : function(self){ - if(self.options.buttons.delicious.size == 'tall'){//tall - var css = 'width:50px;', - cssCount = 'height:35px;width:50px;font-size:15px;line-height:35px;', - cssShare = 'height:18px;line-height:18px;margin-top:3px;'; - } - else{//medium - var css = 'width:93px;', - cssCount = 'float:right;padding:0 3px;height:20px;width:26px;line-height:20px;', - cssShare = 'float:left;height:20px;line-height:20px;'; - } - var count = self.shorterTotal(self.options.count.delicious); - if(typeof count === "undefined"){ - count = 0; - } - $(self.element).find('.buttons').append( - '
'+ - '
'+count+'
'+ - '
'+ - 'Delicious Add
'); - - $(self.element).find('.delicious').on('click', function(){ - self.openPopup('delicious'); - }); - }, - stumbleupon : function(self){ - var sett = self.options.buttons.stumbleupon; - $(self.element).find('.buttons').append('
'); - var loading = 0; - if(typeof STMBLPN === 'undefined' && loading == 0){ - loading = 1; - (function() { - var li = document.createElement('script');li.type = 'text/javascript';li.async = true; - li.src = '//platform.stumbleupon.com/1/widgets.js'; - var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(li, s); - })(); - s = window.setTimeout(function(){ - if(typeof STMBLPN !== 'undefined'){ - STMBLPN.processWidgets(); - clearInterval(s); - } - },500); - } - else{ - STMBLPN.processWidgets(); - } - }, - linkedin : function(self){ - var sett = self.options.buttons.linkedin; - $(self.element).find('.buttons').append('
'); - var loading = 0; - if(typeof window.IN === 'undefined' && loading == 0){ - loading = 1; - (function() { - var li = document.createElement('script');li.type = 'text/javascript';li.async = true; - li.src = '//platform.linkedin.com/in.js'; - var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(li, s); - })(); - } - else{ - window.IN.init(); - } - }, - pinterest : function(self){ - var sett = self.options.buttons.pinterest; - $(self.element).find('.buttons').append('
Pin It
'); - - (function() { - var li = document.createElement('script');li.type = 'text/javascript';li.async = true; - li.src = '//assets.pinterest.com/js/pinit.js'; - var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(li, s); - })(); - } - }, - /* Tracking for Google Analytics - ================================================== */ - tracking = { - googlePlus: function(){}, - facebook: function(){ - //console.log('facebook'); - fb = window.setInterval(function(){ - if (typeof FB !== 'undefined') { - FB.Event.subscribe('edge.create', function(targetUrl) { - _gaq.push(['_trackSocial', 'facebook', 'like', targetUrl]); - }); - FB.Event.subscribe('edge.remove', function(targetUrl) { - _gaq.push(['_trackSocial', 'facebook', 'unlike', targetUrl]); - }); - FB.Event.subscribe('message.send', function(targetUrl) { - _gaq.push(['_trackSocial', 'facebook', 'send', targetUrl]); - }); - //console.log('ok'); - clearInterval(fb); - } - },1000); - }, - twitter: function(){ - //console.log('twitter'); - tw = window.setInterval(function(){ - if (typeof twttr !== 'undefined') { - twttr.events.bind('tweet', function(event) { - if (event) { - _gaq.push(['_trackSocial', 'twitter', 'tweet']); - } - }); - //console.log('ok'); - clearInterval(tw); - } - },1000); - }, - digg: function(){ - //if somenone find a solution, mail me ! - /*$(this.element).find('.digg').on('click', function(){ - _gaq.push(['_trackSocial', 'digg', 'add']); - });*/ - }, - delicious: function(){}, - stumbleupon: function(){}, - linkedin: function(){ - function LinkedInShare() { - _gaq.push(['_trackSocial', 'linkedin', 'share']); - } - }, - pinterest: function(){ - //if somenone find a solution, mail me ! - } - }, - /* Popup for each social network - ================================================== */ - popup = { - googlePlus: function(opt){ - window.open("https://plus.google.com/share?hl="+opt.buttons.googlePlus.lang+"&url="+encodeURIComponent((opt.buttons.googlePlus.url !== '' ? opt.buttons.googlePlus.url : opt.url)), "", "toolbar=0, status=0, width=900, height=500"); - }, - facebook: function(opt){ - - window.open("https://www.facebook.com/dialog/feed?%20app_id=807383452677000%20&display=popup&name="+encodeURIComponent(opt.text)+"&link=https://toolwatch.io/result&redirect_uri=https://toolwatch.io/", "", "toolbar=0, status=0, width=900, height=500"); - }, - twitter: function(opt){ - window.open("https://twitter.com/intent/tweet?text="+encodeURIComponent(opt.text)+"&url="+encodeURIComponent((opt.buttons.twitter.url !== '' ? opt.buttons.twitter.url : opt.url))+(opt.buttons.twitter.via !== '' ? '&via='+opt.buttons.twitter.via : ''), "", "toolbar=0, status=0, width=650, height=360"); - }, - digg: function(opt){ - window.open("http://digg.com/tools/diggthis/submit?url="+encodeURIComponent((opt.buttons.digg.url !== '' ? opt.buttons.digg.url : opt.url))+"&title="+opt.text+"&related=true&style=true", "", "toolbar=0, status=0, width=650, height=360"); - }, - delicious: function(opt){ - window.open('http://www.delicious.com/save?v=5&noui&jump=close&url='+encodeURIComponent((opt.buttons.delicious.url !== '' ? opt.buttons.delicious.url : opt.url))+'&title='+opt.text, 'delicious', 'toolbar=no,width=550,height=550'); - }, - stumbleupon: function(opt){ - window.open('http://www.stumbleupon.com/badge/?url='+encodeURIComponent((opt.buttons.stumbleupon.url !== '' ? opt.buttons.stumbleupon.url : opt.url)), 'stumbleupon', 'toolbar=no,width=550,height=550'); - }, - linkedin: function(opt){ - window.open('https://www.linkedin.com/cws/share?url='+encodeURIComponent((opt.buttons.linkedin.url !== '' ? opt.buttons.linkedin.url : opt.url))+'&token=&isFramed=true', 'linkedin', 'toolbar=no,width=550,height=550'); - }, - pinterest: function(opt){ - window.open('http://pinterest.com/pin/create/button/?url='+encodeURIComponent((opt.buttons.pinterest.url !== '' ? opt.buttons.pinterest.url : opt.url))+'&media='+encodeURIComponent(opt.buttons.pinterest.media)+'&description='+opt.buttons.pinterest.description, 'pinterest', 'toolbar=no,width=700,height=300'); - } - }; - - /* Plugin constructor - ================================================== */ - function Plugin( element, options ) { - this.element = element; - - this.options = $.extend( true, {}, defaults, options); - this.options.share = options.share; //simple solution to allow order of buttons - - this._defaults = defaults; - this._name = pluginName; - - this.init(); - }; - - /* Initialization method - ================================================== */ - Plugin.prototype.init = function () { - var self = this; - if(this.options.urlCurl !== ''){ - urlJson.googlePlus = this.options.urlCurl + '?url={url}&type=googlePlus'; // PHP script for GooglePlus... - urlJson.stumbleupon = this.options.urlCurl + '?url={url}&type=stumbleupon'; // PHP script for Stumbleupon... - } - $(this.element).addClass(this.options.className); //add class - - //HTML5 Custom data - if(typeof $(this.element).data('title') !== 'undefined'){ - this.options.title = $(this.element).attr('data-title'); - } - if(typeof $(this.element).data('url') !== 'undefined'){ - this.options.url = $(this.element).data('url'); - } - if(typeof $(this.element).data('text') !== 'undefined'){ - this.options.text = $(this.element).data('text'); - } - - //how many social website have been selected - $.each(this.options.share, function(name, val) { - if(val === true){ - self.options.shareTotal ++; - } - }); - - if(self.options.enableCounter === true){ //if for some reason you don't need counter - //get count of social share that have been selected - $.each(this.options.share, function(name, val) { - if(val === true){ - //self.getSocialJson(name); - try { - self.getSocialJson(name); - } catch(e){ - } - } - }); - } - else if(self.options.template !== ''){ //for personalized button (with template) - this.options.render(this, this.options); - } - else{ // if you want to use official button like example 3 or 5 - this.loadButtons(); - } - - //add hover event - $(this.element).hover(function(){ - //load social button if enable and 1 time - if($(this).find('.buttons').length === 0 && self.options.enableHover === true){ - self.loadButtons(); - } - self.options.hover(self, self.options); - }, function(){ - self.options.hide(self, self.options); - }); - - //click event - $(this.element).click(function(){ - self.options.click(self, self.options); - return false; - }); - }; - - /* loadButtons methode - ================================================== */ - Plugin.prototype.loadButtons = function () { - var self = this; - $(this.element).append('
'); - $.each(self.options.share, function(name, val) { - if(val == true){ - loadButton[name](self); - if(self.options.enableTracking === true){ //add tracking - tracking[name](); - } - } - }); - }; - - /* getSocialJson methode - ================================================== */ - Plugin.prototype.getSocialJson = function (name) { - var self = this, - count = 0, - url = urlJson[name].replace('{url}', encodeURIComponent(this.options.url)); - if(this.options.buttons[name].urlCount === true && this.options.buttons[name].url !== ''){ - url = urlJson[name].replace('{url}', this.options.buttons[name].url); - } - //console.log('name : ' + name + ' - url : '+url); //debug - if(url != '' && self.options.urlCurl !== ''){ //urlCurl = '' if you don't want to used PHP script but used social button - $.getJSON(url, function(json){ - if(typeof json.count !== "undefined"){ //GooglePlus, Stumbleupon, Twitter, Pinterest and Digg - var temp = json.count + ''; - temp = temp.replace('\u00c2\u00a0', ''); //remove google plus special chars - count += parseInt(temp, 10); - } - //get the FB total count (shares, likes and more) - else if(json.data && json.data.length > 0 && typeof json.data[0].total_count !== "undefined"){ //Facebook total count - count += parseInt(json.data[0].total_count, 10); - } - else if(typeof json[0] !== "undefined"){ //Delicious - count += parseInt(json[0].total_posts, 10); - } - else if(typeof json[0] !== "undefined"){ //Stumbleupon - } - self.options.count[name] = count; - self.options.total += count; - self.renderer(); - self.rendererPerso(); - //console.log(json); //debug - }) - .error(function() { - self.options.count[name] = 0; - self.rendererPerso(); - }); - } - else{ - self.renderer(); - self.options.count[name] = 0; - self.rendererPerso(); - } - }; - - /* launch render methode - ================================================== */ - Plugin.prototype.rendererPerso = function () { - //check if this is the last social website to launch render - var shareCount = 0; - for (e in this.options.count) { shareCount++; } - if(shareCount === this.options.shareTotal){ - this.options.render(this, this.options); - } - }; - - /* render methode - ================================================== */ - Plugin.prototype.renderer = function () { - var total = this.options.total, - template = this.options.template; - if(this.options.shorterTotal === true){ //format number like 1.2k or 5M - total = this.shorterTotal(total); - } - - if(template !== ''){ //if there is a template - template = template.replace('{total}', total); - $(this.element).html(template); - } - else{ //template by defaults - $(this.element).html( - '
' + total + '' + - (this.options.title !== '' ? '' + this.options.title + '' : '') + - '
' - ); - } - }; - - /* format total numbers like 1.2k or 5M - ================================================== */ - Plugin.prototype.shorterTotal = function (num) { - if (num >= 1e6){ - num = (num / 1e6).toFixed(2) + "M" - } else if (num >= 1e3){ - num = (num / 1e3).toFixed(1) + "k" - } - return num; - }; - - /* Methode for open popup - ================================================== */ - Plugin.prototype.openPopup = function (site) { - popup[site](this.options); //open - if(this.options.enableTracking === true){ //tracking! - var tracking = { - googlePlus: {site: 'Google', action: '+1'}, - facebook: {site: 'facebook', action: 'like'}, - twitter: {site: 'twitter', action: 'tweet'}, - digg: {site: 'digg', action: 'add'}, - delicious: {site: 'delicious', action: 'add'}, - stumbleupon: {site: 'stumbleupon', action: 'add'}, - linkedin: {site: 'linkedin', action: 'share'}, - pinterest: {site: 'pinterest', action: 'pin'} - }; - ga('send', 'event', '_trackSocial', tracking[site].site); - } - }; - - /* Methode for add +1 to a counter - ================================================== */ - Plugin.prototype.simulateClick = function () { - var html = $(this.element).html(); - $(this.element).html(html.replace(this.options.total, this.options.total+1)); - }; - - /* Methode for add +1 to a counter - ================================================== */ - Plugin.prototype.update = function (url, text) { - if(url !== ''){ - this.options.url = url; - } - if(text !== ''){ - this.options.text = text; - } - }; - - /* A really lightweight plugin wrapper around the constructor, preventing against multiple instantiations - ================================================== */ - $.fn[pluginName] = function ( options ) { - var args = arguments; - if (options === undefined || typeof options === 'object') { - return this.each(function () { - if (!$.data(this, 'plugin_' + pluginName)) { - $.data(this, 'plugin_' + pluginName, new Plugin( this, options )); - } - }); - } else if (typeof options === 'string' && options[0] !== '_' && options !== 'init') { - return this.each(function () { - var instance = $.data(this, 'plugin_' + pluginName); - if (instance instanceof Plugin && typeof instance[options] === 'function') { - instance[options].apply( instance, Array.prototype.slice.call( args, 1 ) ); - } - }); - } - }; -})(jQuery, window, document); \ No newline at end of file diff --git a/assets/js/sharrre.logic.js b/assets/js/sharrre.logic.js deleted file mode 100644 index 2d62e7af..00000000 --- a/assets/js/sharrre.logic.js +++ /dev/null @@ -1,39 +0,0 @@ -function initShareButton(){ - $('#googleplus').sharrre({ - share: { - googlePlus: true - }, - template: '
Google+
', - enableHover: false, - enableTracking: true, - urlCurl: '', - click: function(api, options){ - api.simulateClick(); - api.openPopup('googlePlus'); - } - }); - $('#twitter').sharrre({ - share: { - twitter: true - }, - template: '
Twitter
', - enableHover: false, - enableTracking: true, - click: function(api, options){ - api.simulateClick(); - api.openPopup('twitter'); - } - }); - $('#facebook').sharrre({ - share: { - facebook: true - }, - template: '
Facebook
', - enableHover: false, - enableTracking: true, - click: function(api, options){ - api.simulateClick(); - api.openPopup('facebook'); - } - }); -} \ No newline at end of file