Add upstream
This commit is contained in:
20
wp-content/plugins/shariff/js/shariff-media.js
Normal file
20
wp-content/plugins/shariff/js/shariff-media.js
Normal file
@@ -0,0 +1,20 @@
|
||||
// shariff media upload
|
||||
jQuery(document).ready(function($){
|
||||
$("#shariff-upload-btn").click(function(e) {
|
||||
e.preventDefault();
|
||||
var image = wp.media({
|
||||
title: shariff_media.choose_image,
|
||||
multiple: false
|
||||
}).open()
|
||||
.on("select", function(){
|
||||
// this will return the selected image from the media uploader, the result is an object
|
||||
var uploaded_image = image.state().get("selection").first();
|
||||
// output to the console uploaded_image
|
||||
console.log(uploaded_image);
|
||||
// convert uploaded_image to a JSON object to make accessing it easier
|
||||
var image_url = uploaded_image.toJSON().url;
|
||||
// assign the url value to the input field
|
||||
$("#shariff-image-url").val(image_url);
|
||||
});
|
||||
});
|
||||
});
|
||||
1
wp-content/plugins/shariff/js/shariff-media.min.js
vendored
Normal file
1
wp-content/plugins/shariff/js/shariff-media.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
jQuery(document).ready(function(a){a("#shariff-upload-btn").click(function(c){c.preventDefault();var b=wp.media({title:shariff_media.choose_image,multiple:false}).open().on("select",function(){var d=b.state().get("selection").first();console.log(d);var e=d.toJSON().url;a("#shariff-image-url").val(e)})})});
|
||||
29
wp-content/plugins/shariff/js/shariff-popup.js
Normal file
29
wp-content/plugins/shariff/js/shariff-popup.js
Normal file
@@ -0,0 +1,29 @@
|
||||
// add click listener function
|
||||
function shariff_click() {
|
||||
// enabled strict mode
|
||||
"use strict";
|
||||
// get elements
|
||||
var classname = document.getElementsByClassName( 'shariff-link' );
|
||||
// set all event listeners
|
||||
for ( var i = 0; i < classname.length; i++ ) {
|
||||
classname[i].addEventListener( 'click', shariff_popup, false );
|
||||
}
|
||||
}
|
||||
// actual popup function
|
||||
function shariff_popup( evt ) {
|
||||
// set variables
|
||||
var t = this.getAttribute( 'href' );
|
||||
var o = screen.width/2-350;
|
||||
var r = screen.height/2-250;
|
||||
// open popup if not one of the special services
|
||||
if ( t.substring( 0, 7 ) !== 'mailto:' && t.substring( 0, 9 ) !== "whatsapp:" && t !== 'javascript:window.print()' && t !== 'http://ct.de/-2467514' ) {
|
||||
// prevent default action
|
||||
evt.preventDefault();
|
||||
// open popup
|
||||
window.open( t,"_blank","height=500, width=700, status=yes, toolbar=no, menubar=no, location=no, top="+r+", left="+o );
|
||||
// return false to prevent tab opening in some browsers
|
||||
return false;
|
||||
}
|
||||
}
|
||||
// add event listener to call shariff popup function after DOM
|
||||
document.addEventListener( 'DOMContentLoaded', shariff_click, false );
|
||||
1
wp-content/plugins/shariff/js/shariff-popup.min.js
vendored
Normal file
1
wp-content/plugins/shariff/js/shariff-popup.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
function shariff_click(){var b=document.getElementsByClassName("shariff-link");for(var a=0;a<b.length;a++){b[a].addEventListener("click",shariff_popup,false)}}function shariff_popup(a){var b=this.getAttribute("href");var d=screen.width/2-350;var c=screen.height/2-250;if(b.substring(0,7)!=="mailto:"&&b.substring(0,9)!=="whatsapp:"&&b!=="javascript:window.print()"&&b!=="http://ct.de/-2467514"){a.preventDefault();window.open(b,"_blank","height=500, width=700, status=yes, toolbar=no, menubar=no, location=no, top="+c+", left="+d);return false}}document.addEventListener("DOMContentLoaded",shariff_click,false);
|
||||
100
wp-content/plugins/shariff/js/shariff.js
Normal file
100
wp-content/plugins/shariff/js/shariff.js
Normal file
@@ -0,0 +1,100 @@
|
||||
// main shariff function
|
||||
function shariff_share_counts() {
|
||||
// enabled strict mode
|
||||
"use strict";
|
||||
// get all shariff containers
|
||||
var containers = document.getElementsByClassName("shariff");
|
||||
// init request object
|
||||
var requests = {};
|
||||
// loop through all containers, create each request url and add all to request array
|
||||
for ( var c = 0; containers[c]; c++ ) {
|
||||
var share_url = containers[c].dataset.url;
|
||||
var services = containers[c].dataset.services;
|
||||
var timestamp = containers[c].dataset.timestamp;
|
||||
// check if an external share count api is set
|
||||
var api = containers[c].dataset.backendurl;
|
||||
if ( typeof api === "undefined" ) {
|
||||
api = '/wp-json/shariff/v1/share_counts?';
|
||||
}
|
||||
// build request url
|
||||
var request_url = api + 'url=' + share_url + '&services=' + services + '×tamp=' + timestamp;
|
||||
// check if we have backend services at all
|
||||
if ( typeof services !== "undefined" ) {
|
||||
// check if the url is already in requests to avoid duplicated requests
|
||||
if ( requests[ share_url ] ) {
|
||||
// add additional services to services
|
||||
services = requests[ share_url ][ 1 ] + '|' + services;
|
||||
// remove duplicates
|
||||
var service_array = services.split("|");
|
||||
service_array = service_array.filter( function( elem, pos, arr ) {
|
||||
return arr.indexOf( elem ) === pos;
|
||||
});
|
||||
services = service_array.join('|');
|
||||
// update request url
|
||||
request_url = api + 'url=' + share_url + '&services=' + services + '×tamp=' + timestamp;
|
||||
// add to requests
|
||||
requests[ share_url ] = [ share_url, services, timestamp, request_url ];
|
||||
}
|
||||
else {
|
||||
requests[ share_url ] = [ share_url, services, timestamp, request_url ];
|
||||
}
|
||||
}
|
||||
}
|
||||
// get share counts
|
||||
for ( var request in requests ) {
|
||||
if ( requests.hasOwnProperty( request ) ) {
|
||||
shariff_get_share_counts( requests[ request ][ 0 ], requests[ request ][ 3 ], containers );
|
||||
}
|
||||
}
|
||||
}
|
||||
// get share counts
|
||||
function shariff_get_share_counts( share_url, request_url, containers ) {
|
||||
// new XMLHttpRequest
|
||||
var request = new XMLHttpRequest();
|
||||
// load asynchronously
|
||||
request.open( 'GET', request_url, true );
|
||||
// actions after answer
|
||||
request.onload = function() {
|
||||
// check if successful
|
||||
if ( request.status >= 200 && request.status < 400 ) {
|
||||
// add to buttons
|
||||
shariff_add_share_counts( share_url, JSON.parse( request.responseText ), containers );
|
||||
}
|
||||
};
|
||||
// start request
|
||||
request.send();
|
||||
}
|
||||
// add share counts
|
||||
function shariff_add_share_counts( share_url, data, containers ) {
|
||||
// add share counts to buttons
|
||||
for ( var d = 0; containers[d]; d++ ) {
|
||||
// check if it is the corresponding button set
|
||||
if ( containers[d].dataset.url === share_url ) {
|
||||
// update total in total number spans
|
||||
var shariff_totalnumber = containers[d].getElementsByClassName("shariff-totalnumber");
|
||||
for ( var n = 0; shariff_totalnumber[n]; n++ ) {
|
||||
if ( data !== null && typeof data.total !== 'undefined' ) {
|
||||
shariff_totalnumber[n].innerHTML = data.total;
|
||||
}
|
||||
}
|
||||
// update total in shariff headline
|
||||
var shariff_total = containers[d].getElementsByClassName("shariff-total");
|
||||
for ( var t = 0; shariff_total[t]; t++ ) {
|
||||
if ( data !== null && typeof data.total !== 'undefined' ) {
|
||||
shariff_total[t].innerHTML = data.total;
|
||||
}
|
||||
}
|
||||
// loop through all button in this container
|
||||
var shariff_count = containers[d].getElementsByClassName("shariff-count");
|
||||
for ( var s = 0; shariff_count[s]; s++ ) {
|
||||
// add share count, if we have one, and make it visible
|
||||
if ( data !== null && typeof data[shariff_count[s].dataset.service] !== 'undefined' && ( typeof containers[d].dataset.hidezero === 'undefined' || ( containers[d].dataset.hidezero === '1' && data[shariff_count[s].dataset.service] > 0 ) ) ) {
|
||||
shariff_count[s].innerHTML = data[shariff_count[s].dataset.service];
|
||||
shariff_count[s].style.opacity = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// add event listener to call main shariff function after DOM
|
||||
document.addEventListener( 'DOMContentLoaded', shariff_share_counts, false );
|
||||
1
wp-content/plugins/shariff/js/shariff.min.js
vendored
Normal file
1
wp-content/plugins/shariff/js/shariff.min.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
function shariff_share_counts(){var d=document.getElementsByClassName("shariff");var a={};for(var i=0;d[i];i++){var e=d[i].dataset.url;var j=d[i].dataset.services;var h=d[i].dataset.timestamp;var g=d[i].dataset.backendurl;if(typeof g==="undefined"){g="/wp-json/shariff/v1/share_counts?"}var k=g+"url="+e+"&services="+j+"×tamp="+h;if(typeof j!=="undefined"){if(a[e]){j=a[e][1]+"|"+j;var b=j.split("|");b=b.filter(function(l,m,c){return c.indexOf(l)===m});j=b.join("|");k=g+"url="+e+"&services="+j+"×tamp="+h;a[e]=[e,j,h,k]}else{a[e]=[e,j,h,k]}}}for(var f in a){if(a.hasOwnProperty(f)){shariff_get_share_counts(a[f][0],a[f][3],d)}}}function shariff_get_share_counts(c,a,d){var b=new XMLHttpRequest();b.open("GET",a,true);b.onload=function(){if(b.status>=200&&b.status<400){shariff_add_share_counts(c,JSON.parse(b.responseText),d)}};b.send()}function shariff_add_share_counts(c,e,b){for(var g=0;b[g];g++){if(b[g].dataset.url===c){var j=b[g].getElementsByClassName("shariff-totalnumber");for(var a=0;j[a];a++){if(e!==null&&typeof e.total!=="undefined"){j[a].innerHTML=e.total}}var h=b[g].getElementsByClassName("shariff-total");for(var i=0;h[i];i++){if(e!==null&&typeof e.total!=="undefined"){h[i].innerHTML=e.total}}var f=b[g].getElementsByClassName("shariff-count");for(var k=0;f[k];k++){if(e!==null&&typeof e[f[k].dataset.service]!=="undefined"&&(typeof b[g].dataset.hidezero==="undefined"||(b[g].dataset.hidezero==="1"&&e[f[k].dataset.service]>0))){f[k].innerHTML=e[f[k].dataset.service];f[k].style.opacity=1}}}}}document.addEventListener("DOMContentLoaded",shariff_share_counts,false);
|
||||
Reference in New Issue
Block a user