'Render a fake payment page.
This is an HTML form that:
* Triggers a POST to `postpay_callback()` on submit.
* Has hidden fields for all the data CyberSource sends to the callback.
- Most of this data is duplicated from the request POST params (e.g. `amount`)
- Other params contain fake data (always the same user name and address.
- Still other params are calculated (signatures)
* Serves an error page (HTML) with a 200 status code
if the signatures are invalid.  This is what CyberSource does.
Since all the POST requests are triggered by HTML forms, this is
equivalent to the CyberSource payment page, even though it\'s
served by the shopping cart app.'

def post(self, request):

    if self._is_signature_valid(request.POST):
        return self._payment_page_response(request.POST)
    else:
        return render_to_response('shoppingcart/test/fake_payment_error.html')
