}
    return floor($first->diff($second)->days / 7);
}
if ($sourcename != "" && $password != "" && $siteID != "" && $fromdate != "" && $todate != "" && $_GET["settings-updated"] == 'true') {
    // initialize default credentials
    $creds = new SourceCredentials($sourcename, $password, array($siteID));
    //START Packagaes and services
    $salesService = new MBSaleService();
    $salesService->SetDefaultCredentials($creds);
    /*
    	Into the darkness we delve!!!
    	There are at LEAST two types of product from mind body Packages/Services...
    	so we are gonna get em all MUAHAHAHAHAHAHA
    */
    $resultgetServices = $salesService->GetServices(array(), array(), array(), null, null, true, null, $creds, XMLDetail::Full, 100);
    $resultgetPackages = $salesService->GetPackages();
    //ok now some manipulationfirst we drill down into it tto get the arrays we need then we append a prodtype to each sop we know for later what's what
    $drilldownresultgetServices = $resultgetServices->GetServicesResult->Services->Service;
    foreach ($drilldownresultgetServices as $service) {
        $service->prodtype = 'Service';
    }
    $drilldownresultgetPackages = $resultgetPackages->GetPackagesResult->Packages->Package;
    foreach ($drilldownresultgetPackages as $package) {
        $package->prodtype = 'Package';
    }
    //and now we merge em!
    $merged = array_merge($drilldownresultgetServices, $drilldownresultgetPackages);
    //OK here goes into the darkness we delve!
    //I'm sure this could be achived another way but this is the way i know..
    foreach ($merged as $key => $value) {
        /*