me->is("Preorderreadonly")) return \mfResponse::Forbidden(); $code = trim($code); if(!$code) { return \mfResponse::NotFound(["message" => "Preorder not found"]); } $preorder = \PreorderModel::getFirst(['ucode' => strtoupper($code), 'partner_id' => $this->me->address_id]); if(!$preorder) { // try oaid $preorder = \PreorderModel::getFirst(['oaid' => strtolower($code), 'partner_id' => $this->me->address_id], "`create` DESC"); } if(!$preorder) { // try as extref $preorder = \PreorderModel::getFirst(['extref' => $code, 'partner_id' => $this->me->address_id]); } if(!$preorder) { return \mfResponse::NotFound(["message" => "Preorder not found"]); } if($preorder->partner_id != $this->me->address_id) { return \mfResponse::NotFound(["message" => "Preorder not found"]); } // set status to 500 if($preorder->status->code < 500) { $new_status = \PreorderstatusModel::getFirst(["code" => 500]); if(!$new_status) { return \mfResponse::InternalServerError(); } $preorder->status_id = $new_status->id; $preorder->save(); } return \mfResponse::Ok(["message" => "Status successfully updated."]); } }