Example #1
0
 /**
  * Does the actual editing of the billing address for the order
  * @param TinyBrick_OrderEdit_Model_Order $order
  * @param array $data
  * @return boolean 
  */
 public function edit(TinyBrick_OrderEdit_Model_Order $order, $data = array())
 {
     $array = array();
     $billing = $order->getBillingAddress();
     $oldArray = $billing->getData();
     //echo '<pre>old';print_r($oldArray);echo '</pre>';
     //echo '<pre>new';print_r($data);echo '</pre>';die;
     $data['street'] = $data['street1'];
     if ($data['street2']) {
         $data['street'] .= "\n" . $data['street2'];
     }
     $billing->setData($data);
     try {
         $billing->save();
         /**
          * logging for changes in billing address
          */
         $newArray = $billing->getData();
         $results = array_diff($oldArray, $newArray);
         $count = 0;
         $comment = "";
         // echo '<pre>';print_r($results);echo '</pre>';die;
         foreach ($results as $key => $result) {
             if (array_key_exists($key, $newArray)) {
                 if ($key == 'updated_at') {
                 } else {
                     $comment .= "Changed " . $key . " FROM: " . $oldArray[$key] . " TO: " . $newArray[$key] . "<br />";
                     $count++;
                 }
             }
         }
         if ($count != 0) {
             $comment = "Changed billing address:<br />" . $comment . "<br />";
             return $comment;
         }
         return true;
     } catch (Exception $e) {
         $array['status'] = 'error';
         $array['msg'] = "Error updating billing address";
         return false;
     }
 }