/** * Save modifiers for this Order at the checkout process. * * @param Array $data */ public function updateModifications(array $data) { //Remove existing Modifications $existingModifications = $this->Modifications(); foreach ($existingModifications as $modification) { $modification->delete(); } $this->updateTotal(); $mods = Modification::get_all(); foreach ($mods as $modification) { $class = get_class($modification); $value = isset($data['Modifiers'][$class]) ? Convert::raw2sql($data['Modifiers'][$class]) : null; $modification->add($this, $value); $this->updateTotal(); } return $this; }