Esempio n. 1
0
 public function downloadVendorRepository($vendorSection)
 {
     $username = Mage::getStoreConfig('pulliver/lightspeed/username');
     $password = Mage::getStoreConfig('pulliver/lightspeed/password');
     $baseUrl = Mage::getStoreConfig('pulliver/lightspeed/base_url');
     $dealerId = Mage::getStoreConfig('pulliver/lightspeed/' . $vendorSection);
     $requestURL = trim($baseUrl, ' /') . '/' . trim($dealerId);
     //	'https://int.lightspeedadp.com/lsapi/Part/76014846'
     $startedAt = time();
     try {
         $remoteRawData = Mage::helper('pulliver')->pullData($requestURL, $username, $password);
         $timeTaken = time() - $startedAt;
         Vikont_Pulliver_Helper_Data::inform(sprintf('Remote inventory downloaded from %s, time=%ds, size=%dbytes', $requestURL, $timeTaken, strlen($remoteRawData)));
         $params = Mage::registry('pulliver_params');
         if ($params->getData('dump')) {
             $fileSize = strlen($remoteRawData);
             $fileName = $this->getLocalFileName(time() . '.dump');
             Mage::helper('pulliver')->saveFile($fileName, $remoteRawData);
             Vikont_Pulliver_Helper_Data::inform(sprintf('Downloaded data saved to file: %s size: %dbytes', $fileName, $fileSize));
         }
     } catch (Exception $e) {
         Vikont_Pulliver_Helper_Data::inform(sprintf('Error downloading remote inventory from %s, size=%dbytes, error message: %s', $requestURL, strlen($remoteRawData), $e->getMessage()));
     }
     return $remoteRawData;
 }
Esempio n. 2
0
    public function getZip()
    {
        $dealerCode = 'TEM026';
        $userName = '******';
        $password = '******';
        $loginUrl = 'https://www.lemansnet.com/login';
        $pricingUrl = 'https://www.lemansnet.com/pricing/2013/pos';
        //Log In and Retrieve Token
        $myToken = $this->lemans_retrieve_token($dealerCode, $userName, $password, $loginUrl);
        if (!empty($myToken)) {
            //Body Contents for Retrieving Zip File
            $zipRequestBody = <<<ZIPREQUESTBODY
<pricing>
\t<whoForDealer>
\t\t<dealerCode>{$dealerCode}</dealerCode>
\t</whoForDealer>
\t<rememberPreferences>1</rememberPreferences>
</pricing>
ZIPREQUESTBODY;
            //Make Request for Zip File
            return $this->lemans_request_pricing_files($pricingUrl, $zipRequestBody, $myToken, 'text/xml');
        } else {
            Vikont_Pulliver_Helper_Data::inform('User validation has failed and a request could not be made');
            return false;
            exit;
        }
    }
Esempio n. 3
0
 public function downloadFile()
 {
     $requestURL = trim(Mage::getStoreConfig('pulliver/western_power/base_url'), ' /');
     $username = Mage::getStoreConfig('pulliver/western_power/username');
     $password = Mage::getStoreConfig('pulliver/western_power/password');
     $connection = ftp_connect($requestURL);
     if (!$connection) {
         Vikont_Pulliver_Helper_Data::inform(sprintf('Could not connect to %s', $requestURL));
     }
     if (!@ftp_login($connection, $username, $password)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('Error logging to FTP %s as %s', $requestURL, $username));
     }
     $remoteFileName = Mage::getStoreConfig('pulliver/western_power/remote_filename');
     $localFileName = $this->getLocalFileName($remoteFileName, 'downloaded/');
     if (file_exists($localFileName)) {
         @unlink($localFileName);
     } else {
         if (!file_exists($dirName = dirname($localFileName))) {
             mkdir($dirName, 0777, true);
         }
     }
     Vikont_Pulliver_Helper_Data::type("Downloading {$requestURL}/{$remoteFileName}...");
     $startedAt = time();
     if (!ftp_get($connection, $localFileName, $remoteFileName, FTP_BINARY)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('Error downloading from FTP %s/%s to %s', $requestURL, $remoteFileName, $localFileName));
     }
     ftp_close($connection);
     $timeTaken = time() - $startedAt;
     Vikont_Pulliver_Helper_Data::inform(sprintf('Inventory successfully downloaded from %s/%s to %s, size=%dbytes, time=%ds', $requestURL, $remoteFileName, $localFileName, filesize($localFileName), $timeTaken));
     return $localFileName;
 }
Esempio n. 4
0
umask(0);
// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Vikont_Pulliver_Model_Log::setLogFileName('pulliver.log');
Vikont_Pulliver_Helper_Data::setSilentExceptions(false);
Vikont_Pulliver_Helper_Data::inform("\nMotonation Connector started...\n");
$commonHelper = Mage::helper('pulliver');
$moduleHelper = Mage::helper('pulliver/Motonation');
$skuHelper = Mage::helper('pulliver/Sku');
try {
    $params = isset($argv) ? Vikont_Pulliver_Helper_Data::getCommandLineParams($argv) : new Varien_Object($_GET);
    if ($downloadedFileName = $params->getData('file')) {
        Vikont_Pulliver_Helper_Data::inform(sprintf('Skipped downloading, using local file %s', $downloadedFileName));
    } else {
        $downloadedFileName = $moduleHelper->downloadFile();
    }
    $update = $moduleHelper->parseFile($downloadedFileName);
    $outputFileName = $moduleHelper->getLocalFileName('inventory.csv');
    $fileHandle = $commonHelper->openFile($outputFileName);
    $lineCounter = 0;
    foreach ($update as $itemNumber => $qty) {
        if ($sku = $skuHelper->getSkuByItemNumber('MT', $itemNumber)) {
            fputcsv($fileHandle, array($sku, $qty));
            $lineCounter++;
        }
    }
    fclose($fileHandle);
    Vikont_Pulliver_Helper_Data::inform(sprintf('Successfully created file %s, %d lines processed, %d lines added', $outputFileName, count($update), $lineCounter));
} catch (Exception $e) {
    Mage::logException($e);
    Vikont_Pulliver_Helper_Data::inform($e->getMessage());
}
Esempio n. 5
0
    public function getZipFileContents($dealerCode, $userName, $password, $loginUrl, $pricingUrl)
    {
        //Log In and Retrieve Token
        $myToken = $this->lemans_retrieve_token($dealerCode, $userName, $password, $loginUrl);
        if ($myToken) {
            //Body Contents for Retrieving Zip File
            $zipRequestBody = <<<ZIPREQUESTBODY
<pricing>
\t<whoForDealer>
\t\t<dealerCode>{$dealerCode}</dealerCode>
\t</whoForDealer>
\t<rememberPreferences>1</rememberPreferences>
</pricing>
ZIPREQUESTBODY;
            //Make Request for Zip File
            return $this->lemans_request_pricing_files($pricingUrl, $zipRequestBody, $myToken, 'text/xml');
        } else {
            Vikont_Pulliver_Helper_Data::inform('PU error: User validation has failed and a request could not be made, message: ' . $myToken);
            return false;
        }
    }