Example #1
0
 public function process()
 {
     $attachments = array();
     $totalNumberOfKeys = 0;
     $totalPreOrders = 0;
     $keys = array();
     $orderDetails = $this->orderDetails;
     foreach ($orderDetails['orderedItems'] as $item_key => $item) {
         $links = $this->getLinks->links($item, $item_key);
         $codes = array();
         if (!empty($links)) {
             foreach ($links as $link) {
                 $code = \CodesWholesale\Resource\Code::get($link);
                 if ($code->isImage()) {
                     $attachments[] = \CodesWholesale\Util\CodeImageWriter::write($code, 'Cw_Attachments');
                 }
                 if ($code->isPreOrder()) {
                     $totalPreOrders++;
                 }
                 $codes[] = $code;
                 $totalNumberOfKeys++;
             }
             $keys[] = array('item' => $item, 'codes' => $codes);
         }
     }
     $this->sendMail($orderDetails['order'], $attachments, $keys, $totalPreOrders);
     $this->setCompleteStatus($orderDetails['order'], $totalNumberOfKeys);
     $this->cleanAttach($attachments);
 }
 /**
  *
  *
  * @param Code $code
  * @param String $whereToSaveDirectory
  * @param String $fileName
  * @throws \InvalidArgumentException
  */
 public static function write(Code $code, $whereToSaveDirectory, $fileName = null)
 {
     if (!$code->isImage()) {
         throw new \InvalidArgumentException("Given code is not image code type.");
     }
     if (!file_exists($whereToSaveDirectory)) {
         mkdir($whereToSaveDirectory, 0755, true);
     }
     if ($fileName) {
         $whereToSaveDirectory .= "/" . $fileName;
     } else {
         $whereToSaveDirectory .= "/" . $code->getFileName();
     }
     $imageData = base64_decode($code->getCode());
     $success = file_put_contents($whereToSaveDirectory, $imageData);
     return $whereToSaveDirectory;
 }