Another Ubercart tip for the new version: Create your custom action in the custom PHP, but then put it into code and use it that way for performance and maintainability.