/**
  * Returns whether to skip this step or not.
  * 
  * @return bool
  * 
  * @author Sebastian Diel <*****@*****.**>
  * @since 11.03.2013
  */
 public function SkipPaymentStep()
 {
     if (is_null($this->skipPaymentStep)) {
         if (SilvercartConfig::SkipPaymentStepIfUnique() && $this->getAllowedPaymentMethods()->Count() == 1) {
             if (($this->getRegisteredNestedForms() instanceof DataList || $this->getRegisteredNestedForms() instanceof ArrayList) && $this->getRegisteredNestedForms()->Count() >= 1 && $this->getRegisteredNestedForms()->First() instanceof SilvercartCheckoutFormStep4DefaultPayment) {
                 $this->skipPaymentStep = false;
             } else {
                 $this->skipPaymentStep = true;
             }
         } elseif (SilvercartConfig::SkipPaymentStepIfUnique() && $this->getActivePaymentMethods()->Count() == 1) {
             if (($this->getRegisteredNestedForms() instanceof DataList || $this->getRegisteredNestedForms() instanceof ArrayList) && $this->getRegisteredNestedForms()->Count() >= 1 && $this->getRegisteredNestedForms()->First() instanceof SilvercartCheckoutFormStep4DefaultPayment) {
                 $this->skipPaymentStep = false;
             } else {
                 $this->skipPaymentStep = true;
             }
         } else {
             $this->skipPaymentStep = false;
         }
     }
     return $this->skipPaymentStep;
 }