// ==UserScript==
// @name Pärssons
// @version 0.1
// @description Get some skivor from havet
// @author Fredrik Engstrand
// @match http://kuponger.parsons.se/*
// @grant none
// ==/UserScript==
// Här bestämmer du vilket nummer som vi ska försöka skicka till
// Exempel:
// var TELEFON_NUMMER = "0723334455";
var TELEFON_NUMMER = "";
function showModal(text)
{
document.body.innerHTML += '<div id="popover" style="position:fixed;top:0px;z-index:99999;width:100%;'+
'height:100vh;background-color:rgba(20,20,20,0.98);display:flex;'+
'flex-direction:column;justify-content:center;align-items:center">'+
'<button style="position:absolute;top:50px;right:50px;color:white;font-family:arial;'+
'background-color:transparent;border:none" id="close-btn">STÄNG</button>'+
'<p style="font-size:50px;color:white;font-family:arial;">' + text + '</p></div>';
$('#close-btn').click(closeModal);
}
function closeModal()
{
$('#popover').css('display', 'none');
}
// Kolla ifall nummret är giltigt
function isValid(p) {
var patterns = /[0-9]/g;
var str = p.replace(/\D/g, "");
var lang = parseInt(str).toString();
var okLangCode = [
'46',
'70',
'72',
'73',
'76',
'79'
];
if (/^\d+$/.test(p) === true)
{
if (okLangCode.indexOf(lang.slice(0, 2)) != -1) {
var newstr = str.substring(str.indexOf("7"));
var okStartDigits = ['70', '72', '73', '76', '79'];
if (okStartDigits.indexOf(newstr.slice(0, 2)) >= 0 && newstr.length == 9) {
console.log('valid phone number');
return patterns.test(newstr);
} else {
console.log('not valid');
return 'Skriv in ett giltigt telefonnummer';
}
}
else
{
return "Ogiltigt nummer";
}
}
else
{
return "Ogiltigt nummer";
}
}
// Main
(function() {
if (isValid(TELEFON_NUMMER) === true)
{
var number = {
phone: TELEFON_NUMMER
};
$.ajax({
type: "POST",
url: window.siteURL + "/ajax/coupon.php",
data: number,
dataType: "json",
success: function(response) {
console.log(response);
if (response.sent === false) {
$('.error-message').text(response.message);
if (response.message == "slut")
{
showModal("Kupongerna är slut, laddar om..");
}
else
{
showModal("Något blev fel!<br>Error: " + response.message);
}
setTimeout(function() {
window.location = window.siteURL;
}, 3000);
} else {
$.get("ajax/thankyou.php", {coupon: response.typeOfcoupon}).done(function(data) {
$('.top-content-container').html(data);
$('.form-container').css('display', 'none');
showModal("Allt gick som planerat, kupongen bör vara skickad.");
});
}
},
error: function(xhr, ajaxOptions, thrownError) {
console.log(xhr);
console.log(thrownError);
showModal("AJAX-ERROR, försöker igen");
setTimeout(function() {
window.location = window.siteURL;
}, 3000);
}
});
}
else
{
showModal("Telefonnummret du angav är fel,<br>fixa till mobilnummret och ladda om sidan."+
"<br>Angett nummer: <span style='color:green'>" + TELEFON_NUMMER + "</span>");
}
})();