Example #1
0
 public function parseFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     if (false === ($handle = fopen($fileName, "rb"))) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('Cannot open file: %s', $fileName));
         return false;
     }
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     if (false !== ($rowData = fgetcsv($handle, 1024, '|'))) {
         $skuColumn = array_search('ITEM_NUM', $rowData);
         $columns = array();
         foreach (self::$columns as $key => $value) {
             $columns[] = array_search($key, $rowData);
         }
     } else {
         return array();
     }
     $result = array();
     while (false !== ($rowData = fgetcsv($handle, 1024, '|'))) {
         $data = array($rowData[$skuColumn]);
         foreach ($columns as $columnPos) {
             $data[] = '+' == $rowData[$columnPos] ? 10 : (int) $rowData[$columnPos];
         }
         $result[] = $data;
     }
     return $result;
 }
Example #2
0
 public function parseFile($fileName, $inventoryType)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     $result = array();
     $data = file($fileName, FILE_IGNORE_NEW_LINES + FILE_SKIP_EMPTY_LINES);
     $pattern = $inventoryType == 'master' ? self::$_itemMasterColumns : self::$_invlistColumns;
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     foreach ($data as $line) {
         $result[] = self::parseLineByPattern($pattern, $line);
     }
     return $result;
 }
Example #3
0
 public function parseFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     $result = array();
     $data = file($fileName, FILE_IGNORE_NEW_LINES + FILE_SKIP_EMPTY_LINES);
     foreach ($data as $line) {
         $values = explode("\t", $line);
         if (count($values) < 2 || '' === $values[2]) {
             continue;
         }
         $result[$values[0]] = (int) $values[2];
     }
     return $result;
 }
Example #4
0
 public function parseFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     $result = array();
     $fileHandle = fopen($fileName, 'r');
     while (false !== ($values = fgetcsv($fileHandle))) {
         if (count($values) < 2) {
             continue;
         }
         //			$result[$values[0]] = array($values[4], $values[5]);
         $result[$values[0]] = $values[1];
     }
     fclose($fileHandle);
     return $result;
 }
Example #5
0
 public function parseFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     $result = array();
     $fileHandle = fopen($fileName, 'r');
     while (false !== ($values = fgetcsv($fileHandle, 0, '|'))) {
         if ($firstLine) {
             $this->_detectColumnPositions($values);
             $firstLine = false;
             continue;
         }
         $result[$values[self::$_columnPositions[0]]] = (int) $values[self::$_columnPositions[1]];
     }
     fclose($fileHandle);
     return $result;
 }
Example #6
0
 public function parseFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('no such data file: %s', $fileName));
         return false;
     }
     Vikont_Pulliver_Helper_Data::type("Parsing {$fileName}...");
     $result = array();
     $fileHandle = fopen($fileName, 'r');
     while (false !== ($values = fgetcsv($fileHandle))) {
         //			$itemNumber = self::formatItemNumber($values[0], $values[1]);
         //			unset($values[0]);
         //			$result[$itemNumber] = $values;
         //			self::convertItemNumberToSKU($itemNumber)
         $result[self::formatItemNumber($values[0], $values[1])] = $values;
     }
     fclose($fileHandle);
     unset($result['Part Number']);
     return $result;
 }
Example #7
0
 public function decodeFile($fileName)
 {
     if (!file_exists($fileName)) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('No such data file: %s', $fileName));
         return false;
     }
     $jsonData = file_get_contents($fileName);
     return $this->decodeJson($jsonData);
 }
Example #8
0
     } else {
         mkdir($dirName, 0755, true);
     }
     $unzippingResult = Vikont_Pulliver_Helper_Data::unZip($downloadedFileName, $dirName);
     if (true !== $unzippingResult) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('Error unzipping file %s to %s, result: %d', $downloadedFileName, $dirName, $unzippingResult));
     }
     $files = Vikont_Pulliver_Helper_Data::getDirectoryListing($dirName);
     if (isset($files['PriceFile_system_errors.txt'])) {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('Error getting remote inventory: %s', file_get_contents($dirName . '/PriceFile_system_errors.txt')));
     }
     $priceFileName = 'BasePriceFile.csv';
     if (isset($files[$priceFileName])) {
         $inventoryFileName = $dirName . '/' . $priceFileName;
     } else {
         Vikont_Pulliver_Helper_Data::throwException(sprintf('No %s file found in the downloaded archive %s at %s', $priceFileName, $downloadedFileName, $dirName));
     }
 } else {
     Vikont_Pulliver_Helper_Data::inform(sprintf('Skipped downloading and extracting, using local file %s', $inventoryFileName));
 }
 $update = $moduleHelper->parseFile($inventoryFileName);
 if ($dumpParsedFileName = $params->getData('dump_parsed_file')) {
     $dumpParsedFileName = $moduleHelper->getLocalFileName($dumpParsedFileName);
     $fHandle = $commonHelper->openFile($dumpParsedFileName);
     foreach ($update as $qtys) {
         fputcsv($fHandle, $qtys);
     }
     fclose($fHandle);
     Vikont_Pulliver_Helper_Data::inform(sprintf('Successfully created a dump of parsed file %s', $dumpParsedFileName));
 }
 $outputFileName = $moduleHelper->getLocalFileName('inventory.csv');
Example #9
0
 protected function lemans_retrieve_token($dealerCode, $userName, $password, $loginURL)
 {
     $requestItems = array('rememberMe' => 'on', 'dealerCode' => $dealerCode, 'dm' => 4, 'userName' => $userName, 'password' => $password);
     $requestString = $this->lemans_generate_query_parameter_string($requestItems);
     $tokenRequest = $this->lemans_do_token_request($loginURL . $requestString, null);
     if (!$tokenRequest) {
         Vikont_Pulliver_Helper_Data::throwException('PU: Login Unsuccessful');
     } else {
         return $tokenRequest;
     }
 }