public static function createFtpOrders($orders, $fulfillmentModel) { self::$_relationships = array(); self::$updateOrders = array(); foreach ($orders as $order) { if ($order['status'] == 'ok') { self::$updateOrders[] = $order['order_id']; } if ($order['ship_with'] && !isset($orders[$order['ship_with']])) { $orders[$order['order_id']]['ship_with'] = ''; } if ($order['ship_with']) { self::$_relationships[$order['order_id']] = $order['ship_with']; } } self::$returnArray = array(); foreach ($orders as $order) { if (!$order['shippable']) { continue; } if (isset($order['ship_with']) && $order['ship_with']) { $order['ship_with'] = self::find_main($order['ship_with']); if (isset(self::$returnArray[$order['ship_with']])) { $orderFtpModel = self::$returnArray[$order['ship_with']]; $orderFtpModel->ship_with = true; $orderFtpModel->fillProduct($order); self::$returnArray[$order['ship_with']] = $orderFtpModel; } else { $orderFtpModel = new OrderFTP(); $orderFtpModel->fillOrder($order); $orderFtpModel->ship_with = true; $orderFtpModel->fillProduct($order); self::$returnArray[$order['ship_with']] = $orderFtpModel; } } else { $orderFtpModel = isset(self::$returnArray[$order['order_id']]) ? self::$returnArray[$order['order_id']] : new OrderFTP(); $orderFtpModel->fillOrder($order); $orderFtpModel->ship_with = false; $orderFtpModel->fillProduct($order); self::$returnArray[$order['order_id']] = $orderFtpModel; } } $array = self::getOrdersArray(); return Csv::saveCsv($array, $fulfillmentModel->csvFileName); }
if (strlen($order['expiry_date']) == 4) { $expiry_date[] = substr($order['expiry_date'], 0, 2); $expiry_date[] = '20' . substr($order['expiry_date'], 2, 2); } elseif (strlen($order['expiry_date']) == 3) { $expiry_date[] = '0' . substr($order['expiry_date'], 0, 1); $expiry_date[] = '20' . substr($order['expiry_date'], 1, 2); } else { $expiry_date[] = '00'; $expiry_date[] = '0000'; } $expiryDate = implode('/', $expiry_date); $csv[] = array($order['order_id'], date("d/m/Y"), 'HHCRBM', $order['product_name'], '', '', $order['fname'], $order['lname'], $order['address1'], $order['address2'], $order['city'], $order['country_name'], $order['zip'], $order['phone'], '', $order['email'], sprintf("%02d", substr($order['created'], 8, 2)) . '/' . sprintf("%02d", substr($order['created'], 5, 2)) . '/' . sprintf("%02d", substr($order['created'], 0, 4)), 'Credit', $arrayNote1['ccn'], $expiryDate, '', '', $arrayNote1['ccc'], 'rocket', '1'); } $name = 'lj3out_rocket_' . date('Ymdhis'); $path = array('files', 'csv', 'rockets'); $filePath = Csv::saveCsv($csv, $name, $path); $fileZipPath = AF::path($name, $path, 'zip'); $phpFilePath = AF::path('zip', $path); system('/usr/bin/php ' . $phpFilePath . ' name=' . $name . ' > /dev/null 2>&1 &'); $sftp = new Net_SFTP($option['server']); if (!$sftp->login($option['username'], $option['password'])) { exit('Login Failed'); } if (!$sftp->put($sftp->pwd() . $option['uploadPath'] . $name . '.zip', $fileZipPath, NET_SFTP_LOCAL_FILE)) { echo 'error'; die; } $sql = "UPDATE `orders` SET `rocket` = 2\n WHERE `order_id` IN (?a)"; $msql->query($sql, $orderIDs); unlink($fileZipPath); unlink($filePath);