コード例 #1
0
ファイル: CheckoutSummary.php プロジェクト: rukzuk/rukzuk
 /**
  * Render Checkout Summary
  *
  * @return HtmlTagBuilder
  */
 public function renderCheckoutSummary()
 {
     /** @var HtmlTagBuilder $result */
     $result = HtmlTagBuilder::div();
     $checkout = $this->checkout;
     // Customer and Payment
     $customer = $checkout['customer'];
     $result->append(HtmlTagBuilder::h2($customer->label()));
     $paymentMethod = $this->paymentMethods[$customer['paymentMethod']->val()];
     $result->append($this->buildKeyValueTable(array($customer['email']->label() => $customer['email']->val(), $customer['telephone']->label() => $customer['telephone']->val(), $customer['paymentMethod']->label() => HtmlTagBuilder::div(HtmlTagBuilder::h3($paymentMethod['name']))->appendText($paymentMethod['desc']))));
     // Addresses
     $billing = $checkout['billing'];
     $shipping = $checkout['shipping'];
     $result->append(HtmlTagBuilder::h2($billing->label()));
     $result->append($this->renderAddress($billing));
     $result->append(HtmlTagBuilder::h2($shipping->label()));
     if ($shipping['use_shipping_address']->val() === 'on') {
         $result->append($this->renderAddress($shipping));
     } else {
         $result->append($this->i18n->translate('checkoutSummary.shippingAdrSameAsBilling'));
     }
     // Comment
     $extra = $checkout['extra'];
     $result->append(HtmlTagBuilder::h2($extra->label()));
     $result->appendText($extra['comment']->val());
     return $result;
 }
コード例 #2
0
 public function test_process()
 {
     // ARRANGE
     $uniqueString = __CLASS__ . '::' . __METHOD__ . '::' . __LINE__;
     $settingsMock = $this->getShopSettingsMock(null, null, array('getEmailNotificationAdr' => array($this->once(), $uniqueString . '*****@*****.**'), 'getEmailConfirmationText' => array($this->once(), $uniqueString . '*****@*****.**')));
     $cartMock = $this->getCartMock();
     $translatorMock = $this->getTranslatorMock();
     $checkoutMock = $this->getCheckoutMock();
     $mailerMock = $this->getMailerMock();
     $strategy = $this->getCompleteStrategyMock(array('renderCart' => array($this->once(), HtmlTagBuilder::div()->appendText('CartOutput')), 'renderCheckoutSummary' => array($this->once(), HtmlTagBuilder::div()->appendText('CheckoutSummaryOutput')), 'getMailer' => array($this->exactly(2), $mailerMock)), array($settingsMock, $checkoutMock, $cartMock, $translatorMock));
     // ACT
     $actualResponse = $strategy->process();
     // ASSERT
     $expectedShopResponse = new ShopModeResponse('showSuccess');
     $this->assertEquals($expectedShopResponse, $actualResponse);
 }
コード例 #3
0
 /**
  * @param \Render\APIs\APIv1\RenderAPI $renderApi
  * @param Unit $unit
  * @param $moduleInfo
  * @param \Render\APIs\APIv1\Page $productPage
  * @param Translator $i18n
  *
  * @return HtmlTagBuilder|void
  */
 private function getAddCartTag($renderApi, $unit, $moduleInfo, $productPage, $i18n)
 {
     $shopSettings = $renderApi->getWebsiteSettings('rz_shop');
     $cartPageId = $shopSettings['cartPage'];
     if (!$cartPageId) {
         return HtmlTagBuilder::div(HtmlTagBuilder::button($i18n->translate('msg.noCartPage'))->set(array('style' => 'cursor: default;')))->set(array('class' => 'RUKZUKmissingInputHint'));
     }
     $cartText = $i18n->translateInput($renderApi->getFormValue($unit, 'cartText'));
     $cartUrl = $renderApi->getNavigation()->getPage($cartPageId)->getUrl();
     return $this->displayCartButton($cartText, $productPage, $cartUrl, $renderApi->isEditMode() || $renderApi->isTemplate(), $i18n);
 }
コード例 #4
0
ファイル: CompleteStrategy.php プロジェクト: rukzuk/rukzuk
 /**
  * @param HtmlTagBuilder $confirmation
  * @param string|null    $emailConfirmationText
  *
  * @return string
  */
 protected function getEmailBody($confirmation, $emailConfirmationText = null)
 {
     if (empty($emailConfirmationText)) {
         return $confirmation->toString();
     } else {
         $emailBody = HtmlTagBuilder::div()->appendText($emailConfirmationText)->append($confirmation);
         return $emailBody->toString();
     }
 }
コード例 #5
0
ファイル: rz_shop_cart.php プロジェクト: rukzuk/rukzuk
 /**
  * @param HeadAPI        $api
  * @param Unit           $unit
  * @param HtmlTagBuilder $wrapper
  */
 protected function showErrors($api, $unit, $wrapper)
 {
     $errors = $this->getUnitContext($api, $unit, 'errors', array());
     foreach ($errors as $errorMessage) {
         $wrapper->append(HtmlTagBuilder::div($errorMessage)->set('class', 'errorMessage'));
     }
 }