Packages | Product Name | Orginal Product Price Before Bundling |
25 €$£ Monthly (Pay 300 €$£ Yearly) |
50 €$£ Monthly (Pay 600 €$£ Yearly) |
75 €$£ Monthly (Pay 900 €$£ Yearly) |
100 €$£ Monthly (Pay 1200 €$£ Yearly) |
|||||
---|---|---|---|---|---|---|---|---|---|---|---|
Once you have decided on the bundle, select the products to that bundle quantity from any group, note that each product must have an unique user name, you will be asked later to input these values. User name must be a different email for payroll Product and or name for other products. |
|||||||||||
Included with each product | |||||||||||
Number of users | 25 users | 50 users | 75 users | 100 users | |||||||
Email account allocated | 25 email account | 50 email account | 75 email account | 100 email account | |||||||
Softdrive Office tools included |
✓ | ✓ | ✓ | ✓ | |||||||
IN THE CORRESPONDING COLUMN SELECTED FOR THE NUMBER OF USERS, SELECT ANY OTHER FOUR PRODUCTS. | |||||||||||
Bundle 1 | SoftDrive Project & Task Management | Select your desire options | |||||||||
a | Project & Task Management 50 | 179.7 €$£ yearly (14.98 monthly) | |||||||||
b | Project & Task Management 75 | 359.7 €$£ yearly (29.98 monthly) | |||||||||
c | Project & Task Management 150 | 899.1 €$£ yearly (74.93 monthly) | |||||||||
d | Project & Task Management 300 | 1258.80 €$£ yearly (104.90 monthly) | |||||||||
e | Project & Task Management 500 | 1618.50 €$£ yearly (134.86 monthly) | |||||||||
Bundle 2 | Sofdrive Office Tools | Office included with any pack | |||||||||
a | SoftDrive Spreadsheets | Included with Any Bundle | |||||||||
b | SoftDrive Words | Included with Any Bundle | |||||||||
c | SoftDrive Notes | Included with Any Bundle | |||||||||
Bundle 3 | Business Email with anti spam security | Dedicated Business Email Account (Employee working email account) (Corresponding email bundle included with any pack) |
|||||||||
a | 25 email account | Included with 25 Users | |||||||||
b | 50 email account | Included with 50 Users | |||||||||
c | 75 email account | Included with 50 Users | |||||||||
d | 100 email account | Included with 100 Users | |||||||||
Bundle 4 | Accounting Packages | Select your desire options | |||||||||
a | Basic Micro Account | 45.00 €$£ yearly (3.75 monthly) | |||||||||
b | Basic Micro Account+ | 69.00 €$£ yearly (5.75 monthly) |
|||||||||
c | Small Business Freelancer Sole Trader | 93.00 €$£ yearly (7.75 monthly) |
|||||||||
d | SME Accounting | 147.00 €$£ yearly (12.25 monthly) |
|||||||||
e | GL Accounting : SMLE | 207.00 €$£ yearly (17.25 monthly) |
|||||||||
f | GL Accounting + : SMLE | 359.40 €$£ yearly (29.95 monthly) |
|||||||||
Bundle 5 | SoftDrive Payroll | Select your desire options | |||||||||
a | Basic Payroll 5 | 60.00 €$£ yearly (5 monthly) | |||||||||
b | Payroll 10 | 84.00 €$£ yearly (7 monthly) | |||||||||
c | Payroll 25 | 120.00 €$£ yearly (10 monthly) | |||||||||
d | Payroll 50 | 180.00 €$£ yearly (15 monthly) | |||||||||
e | Payroll 100 | 360.00 €$£ yearly (30.00 monthly) | |||||||||
f | Payroll 150 | 540.00 €$£ yearly (45 monthly) | |||||||||
g | Payroll 200 | 720.00 €$£ yearly (60 monthly) | |||||||||
h | Payroll 300 | 960.00 €$£ yearly (80 monthly) | |||||||||
i | Payroll 500 | 1320.00 €$£ yearly (110 monthly) | |||||||||
Bundle 6 | HR Payroll | Select your desire options | |||||||||
a | Payroll HR 50 | 599.4 €$£ yearly (49.95 monthly) | |||||||||
b | Payroll HR 75 | 719.4 €$£ yearly (59.95 monthly) | |||||||||
c | Payroll HR 150 | 1798.2 €$£ yearly (149.85 monthly) | |||||||||
d | Payroll HR 300 | 2517.6 €$£ yearly (209.80 monthly) | |||||||||
e | Payroll HR 500 | 3237 €$£ yearly (269.75 monthly) | |||||||||
You will have to Pay the Membership Fee Yearly | |||||||||||
Total Price | Original Product Price 0 €$£ Bundle Yearly Price 0 €$£ You are saving 0 €$£ |
||||||||||
Verify your product now |
function btnclick(){ document.getElementById("btn").disabled = true; }
var membership1 = document.getElementsByClassName('membership1') var membership2 = document.getElementsByClassName('membership2') var membership3 = document.getElementsByClassName('membership3') var membership4 = document.getElementsByClassName('membership4')
//var free = document.getElementsByClassName('free') //for free package
//var counterValue = document.querySelector('#easy_invoicing')
var counterValue = document.querySelector('#counterValue') //total value var bundle = document.querySelector('#bundle') //bundle value var sav = document.querySelector('#sav') //saving value
// var free1 = document.querySelector('#free1') //saving value // var free2 = document.querySelector('#free2') //saving value // var free3 = document.querySelector('#free3') //saving value // var free4 = document.querySelector('#free4') //saving value
//get free bundle produts var free1 = document.getElementsByClassName('free1') //saving value var free2 = document.getElementsByClassName('free2') //saving value var free3 = document.getElementsByClassName('free3') //saving value var free4 = document.getElementsByClassName('free4') //saving value
//get email products var email25 = document.getElementById('25 email account') //saving value var email50 = document.getElementById('50 email account') //saving value var email75 = document.getElementById('70 email account') //saving value var email100 = document.getElementById('100 email account') //saving value
//check $("#free1").prop('checked', this.checked);
// free1.disabled = true // free1.checked = true var submitBtn = document.querySelector('#submitBtn') //submit button
submitBtn.removeAttribute("href");
var msg = document.querySelector('#msg') let counter = 0 var arr = [] var c = 0 var saving = null
var email= null; var pass= null;
var data = {data: []} //storing all data
var useroremail = email;
add(membership1) add(membership2) add(membership3) add(membership4)
data.data.push({original_price: 0.00, application: "SoftDrive Spreadsheets"},{original_price: 0.00, application: "SoftDrive Words"}, {original_price: 0.00, application: "SoftDrive Notes"})
function confirmAlt(){ Swal.fire({ position: 'center', icon: 'success', title: 'All product added successfully for the bundle.', showConfirmButton: false, timer: 2500, width: 500, }) }
function JSalert(altMsg) { Swal.fire({ icon: 'error', //title: "Oops...", width: 600, title: altMsg, timer: 4000, }) }
//main function function add(increment1) { let pre1 = 'package1' let pre2 = 'package2' let pre3 = 'package3' let pre4 = 'package4'
//slect free pack loop for disable and checked function freeLoopDisCheck(data) { for(var i = 0; i < data.length; i++) { data[i].disabled = true; data[i].checked = true; } } //slect free pack loop for enable and uncheked function freeLoopEnaUncheck(data) { for(var i = 0; i < data.length; i++) { data[i].disabled = false; data[i].checked = false; } } // const checkIfExist = gta => { // var storeData = [] // storeData.push(gta) // if(storeData.length>0 && storeData[storeData.length-1] != storeData[storeData.length-2]){ // var findGualm = data.data.findIndex(data => data.package == storeData[storeData.length-2]) // data.data.splice(findGualm, 1) // } // }
//slect free email bundle loop for disable and checked function freeEmailDisCheck(membr, id) { for(var i = 0; i < membr.length; i++) { if(membr[i].id == id){ var checkdata = data.data.findIndex(data => data.application == id) console.log("checkdata::: ", checkdata) if(checkdata == -1){ // checkIfExist(membr[i].id) data.data.push({original_price: 0, application: id}) } membr[i].checked = true membr[i].disabled = true break } } }
//slect free email bundle loop for enable and uncheked function freeEmailEnaUncheck(membr, id) { for(var i = 0; i < membr.length; i++) { if(membr[i].id == id){ membr[i].checked = false membr[i].disabled = false break } } } //check free packages function freePack(pack){ if(pack == pre1){ freeLoopDisCheck(free1) //free office tool (disable and checked) freeEmailDisCheck(membership1, "25 email account") //free email account (disable and checked) } else { freeLoopEnaUncheck(free1) //free office tool (enable and uncheked) freeEmailEnaUncheck(membership1, "25 email account") //free email account (enable and uncheked) } if(pack == pre2){ freeLoopDisCheck(free2) //free office tool freeEmailDisCheck(membership2, "50 email account") //free email account } else { freeLoopEnaUncheck(free2) //free office tool freeEmailEnaUncheck(membership2, "50 email account") //free email account } if(pack == pre3){ freeLoopDisCheck(free3) //free office tool freeEmailDisCheck(membership3, "75 email account") //free email account } else { freeLoopEnaUncheck(free3) //free office tool freeEmailEnaUncheck(membership3, "75 email account") //free email account } if(pack == pre4){ freeLoopDisCheck(free4) //free office tool freeEmailDisCheck(membership4, "100 email account") //free email account }else { freeLoopEnaUncheck(free4) //free office tool freeEmailEnaUncheck(membership4, "100 email account") //free email account } } //free email function // function getFreeEmail(membr, id){ // for(var i = 0; i < membr.length; i++) // { // // if(arr.length>1 && (arr[arr.length-1] != arr[arr.length-2]) && membr.checked == true){ // // membr[i].checked = false // // membr[i].disabled = false // // } // if(membr[i].id == id){ // data.data.push({original_price: 0, application: id}) // membr[i].checked = true // membr[i].disabled = true // } // //emailPack[index].checked = true
// } // }
function task(e, n, bundle, application){ freePack(e.name) console.log(arr) console.log(arr[arr.length-1]+ arr[arr.length-2]) app = n let val1 = parseFloat(e.value).toFixed( 2 ) if (e.checked == true) { (c <= app) ? (c += 1) : null; // (c <= app) ? (c += 1) && JSInput() : null; console.log(app+ " app : "+c+ " c") if (c > app) { c -- e.checked = false // e.disabled = true JSalert("You can choose max "+ n+" applications from this membership!!!") } else { counter += parseFloat(val1) data.data.push({original_price: e.value, application: application}) }
if(c == app) { submitBtn.setAttribute("href", "https://bobosoho.com/verify.html"); submitBtn.removeAttribute("disabled") //freePack(e.name)
// data.data.push({original_price: 0.00, application: "SoftDrive Notes"}) //storing data data.bundle= bundle; data.saving= counter - bundle; data.original_total_price= counter; localStorage.setItem("V3_data", JSON.stringify(data)); }
console.log("test me: ", c)
if(c == app && counter > bundle){ saving = counter - bundle sav.innerText = parseFloat(saving).toFixed(2)
} else { sav.innerText = 0 } } else { // e.value == 0 || e.value =="0" ? (isFreeAdded = false && (c -= 1)): null //for free package unchecked //data.data.splice(data.data.length-1, 1) (counter > 0) && (counter -= parseFloat(val1).toFixed( 2 )) c -= 1 e.checked = false sav.innerText = 0 console.log("the C: ", c)
var removeIndex = data.data.map(function(item) { return item.application; }).indexOf(application);
// remove object data.data.splice(removeIndex, 1);
} console.log("final data: ", data) counterValue.innerText = parseFloat(counter).toFixed( 2 )
//pushing free pack data //free.checked === ture? data.data.push({original_price: 0.00, application: "SoftDrive Notes"}): null
} //let val1 = parseInt(increment1.value)
//var isFreeAdded = false Array.prototype.forEach.call(increment1, function (e) { //looping through all the checklist by different packages
e.addEventListener('click', () => {
console.log("details: ",e.id) let app = 0 cur = e.name arr.push(e.name);
//reset array, reseting every container if(c > 0 && arr.length>1 && (arr[arr.length-1] != arr[arr.length-2])){ app = 0 c=0 counter= 0 counterValue.innerText = 0 bundle.innerText = 0 sav.innerText = 0 $('input:checkbox').removeAttr('checked') e.checked= false arr= [];
data.data= [] data.bundle= null data.saving= null
submitBtn.removeAttribute("href"); submitBtn.removeAttribute("enabled")
localStorage.removeItem("data"); app = 0 JSalert("You can't choose from two membership bundle at a time") console.log("Testing: "+arr.length+" "+ arr+ e.checked+ " "+c+" "+app) } else {
console.log("check high priority: ", e)
if(e.name == "package1"){ var application = e.id; bundle.innerText = 300 task(e, 4, 300, application) } if(e.name == "package2"){ var application = e.id; bundle.innerText = 600 task(e, 4, 600, application) } if(e.name == "package3"){ var application = e.id; bundle.innerText = 900 task(e, 4, 900, application) } if(e.name == "package4"){ var application = e.id; bundle.innerText = 1200 task(e, 4, 1200, application) } } }) })
}