/**
  * Default action handler for this page
  * 
  * @param	SS_HTTPRequest	$request
  * @return	Object			AfterPurchasePage
  */
 public function afterPurchase(SS_HTTPRequest $request)
 {
     if ($request->isGET()) {
         if ($this->validateClickBankRequest) {
             $cbreceipt = $request->getVar('cbreceipt');
             $cbpop = $request->getVar('cbpop');
             $name = $request->getVar('cname');
             $email = $request->getVar('cemail');
             if (!empty($cbreceipt) && !empty($cbpop)) {
                 if (ClickBankManager::validate_afterpurchase_request($request->getVars())) {
                     $member = DataObject::get_one('Member', "Email = '{$email}'");
                     // make the member status to logged-in
                     if ($member && $this->loginAfterClickBankRequestIsValid) {
                         $member->logIn();
                     }
                     // few handy replacement texts
                     $content = $this->Content;
                     $content = str_replace('$CBReceipt', $cbreceipt, $content);
                     $content = str_replace('$CBName', $name, $content);
                     $data = array('Title' => $this->Title, 'Content' => $content);
                     return $this->customise($data)->renderWith(array('AfterPurchasePage' => 'Page'));
                 }
             }
         } else {
             $data = array('Title' => $this->Title, 'Content' => $this->Content);
             return $this->customise($data)->renderWith(array('AfterPurchasePage' => 'Page'));
         }
     }
     return $this->redirect('/server-error');
 }