/// <summary> /// Processes an order shipped event /// </summary> /// <param name="order">Order that has been shipped</param> public static void OrderShipped(Order order) { order.Notes.Add(new OrderNote(order.OrderId, order.UserId, LocaleHelper.LocalNow, Properties.Resources.OrderShipped, NoteType.SystemPrivate)); order.Notes.Save(); order.ShipmentStatus = OrderShipmentStatus.Shipped; order.Save(); UpdateOrderStatus(StoreEvent.OrderShipped, order); //if the order was a google checkout order, update gooogle checkout if (!string.IsNullOrEmpty(order.GoogleOrderNumber)) { GoogleCheckout instance = GoogleCheckout.GetInstance(); TrackingNumber number = order.GetLastTrackingNumber(); instance.DeliverOrder(order.GoogleOrderNumber, number); } Hashtable parameters = new Hashtable(); parameters["order"] = order; parameters["customer"] = order.User; parameters["payments"] = order.Payments; ProcessEmails(StoreEvent.OrderShipped, parameters); }