/** * Function to generate json representation of the cart information * * This function generate json representation of the cart information * * * @param $params contains option of the generated result * @param $template to associate generated result * * @return string json code of the cart information */ function smarty_function_sirclo_render_cart_json($params, $template) { $jsonData = array(); $renderer = new Renderer_Cart(); $renderer->cartTableMode = 'mini'; if ($message = $template->smarty->getTemplateVars('message')) { $jsonData['message'] = $message; $jsonData['message_type'] = $template->smarty->getTemplateVars('message_type'); } $cart = $params['cart']; $jsonData['cart'] = Helper_Structure::filterArrayByKeys($cart, array('currency_symbol', 'total_items', 'grand_total')); $jsonData['cart_html'] = $renderer->renderCartTable($cart); return json_encode($jsonData); }
/** * Function to generate cart table * * This function generate cart table based on the option given in $params. Those options are * <ul> * <li>with_image: To show the image of the cart item</li> * <li>with_edit_item: Able to edit the item</li> * <li>with_break_options: Decide whether there is break option or not</li> * </ul> * * @param $params contains option of the generated result * @param $template to associate generated result * * @return string HTML code of the edit cart form <form>...</form> */ function smarty_function_sirclo_render_cart_table($params, $template) { $renderer = Renderer_Cart::getInstanceFromSmartyParams($params, $template); $renderParams = array(); if (isset($params['with_image'])) { $renderParams['with_image'] = $params['with_image']; } if (isset($params['with_edit_item'])) { $renderParams['with_edit_item'] = $params['with_edit_item']; } if (isset($params['with_break_options'])) { $renderParams['with_break_options'] = $params['with_break_options']; } $tableHtml = $renderer->renderCartTable($params['cart'], $renderParams); return $tableHtml; }
/** * Function to generate cart shipping method * * This function generate cart shipping method * * * @param $params contains option of the generated result * @param $template to associate generated result * * @return string HTML code of the shipping method */ function smarty_function_sirclo_render_cart_shipping_method($params, $template) { $renderer = Renderer_Cart::getInstanceFromSmartyParams($params); $renderParams = array(); if (isset($params['options'])) { $renderParams['options'] = $params['options']; } if (isset($params['label'])) { $renderParams['label'] = $params['label']; } if (isset($params['shipping_city_options'])) { $renderParams['shipping_city_options'] = $params['shipping_city_options']; } if (isset($params['shipping_city_label'])) { $renderParams['shipping_city_label'] = $params['shipping_city_label']; } $html = $renderer->renderCartEditForm($params['cart'], $renderParams); return $html; }
static function sircloRenderPlaceOrderForm($params) { $_member_salutation = !empty($params['member']['salutation']) ? $params['member']['salutation'] : ''; $_member_name = !empty($params['member']['first_name']) ? $params['member']['first_name'] : ''; $_member_address = !empty($params['member']['address_line1']) ? $params['member']['address_line1'] : ''; $_member_city = !empty($params['member']['city']) ? $params['member']['city'] : ''; $_member_postal_code = !empty($params['member']['postal_code']) ? $params['member']['postal_code'] : ''; $_member_state = !empty($params['member']['state']) ? $params['member']['state'] : ''; $_member_country = !empty($params['member']['country']) ? $params['member']['country'] : ''; if (!$_member_country && !empty($params['default_country'])) { $_member_country = $params['default_country']; } $_member_phone = !empty($params['member']['phone']) ? $params['member']['phone'] : ''; $_member_email = !empty($params['member']['email']) ? $params['member']['email'] : ''; $_shipping_city = !empty($params['shipping_city']) ? $params['shipping_city'] : ''; $_shipping_country = !empty($params['shipping_country']) ? $params['shipping_country'] : ''; $_link_terms = !empty($params['link_terms']) ? $params['link_terms'] : ''; $_link_privacy = !empty($params['link_privacy']) ? $params['link_privacy'] : ''; $_btn_class = !empty($params['btn_class']) ? $params['btn_class'] : 'btn-flat'; $_lang = 'en'; if (!empty($params['lang'])) { $_lang = $params['lang']; } else { if (!empty($params['configs']) && isset($params['configs']['default_lang'])) { $_lang = $params['configs']['default_lang']; } } if ($_lang == 'id') { $_label_salutation = 'Sapaan'; $_label_name = 'Nama'; $_label_phone = 'No HP'; $_label_address = 'Alamat'; $_label_city = 'Kota/Kecamatan'; $_label_postal_code = 'Kode Pos'; $_label_state = 'Provinsi'; $_label_country = 'Negara'; $_label_email = 'E-mail'; $_label_shipping = "Alamat Pengiriman"; $_label_shipping_methods = "Metode Pengiriman"; $_label_backorder_shipping_methods = "Metode Pengiriman Backorder"; $_label_different_address = 'Kirim ke alamat berbeda?'; $_label_payment_method = 'Metode Pembayaran'; $_label_message_subheader = 'Pesan ke Penjual'; $_label_message = 'Pesan'; $_label_bank_transfer = !empty($params['label_bank_transfer']) ? $params['label_bank_transfer'] : 'Transfer Bank'; $_label_credit_card = 'Kartu Kredit / PayPal'; //$_label_agreement = "Saya telah membaca dan menyetujui <a href='$_link_terms'>Syarat dan Ketentuan</a> dan <a href='$_link_privacy'>Kebijakan Privasi</a>"; } else { $_label_salutation = 'Salutation'; $_label_name = 'Name'; $_label_phone = 'Mobile Phone'; $_label_address = 'Address'; $_label_city = 'City/District'; $_label_postal_code = 'Postal Code'; $_label_state = 'State/Province'; $_label_country = 'Country'; $_label_email = 'E-mail'; $_label_shipping = "Shipping Address"; $_label_shipping_methods = "Shipping Method"; $_label_backorder_shipping_methods = "Backorder Shipping Method"; $_label_different_address = 'Send to different address?'; $_label_payment_method = 'Payment Method'; $_label_message_subheader = 'Note to Seller'; $_label_message = 'Message'; $_label_bank_transfer = !empty($params['label_bank_transfer']) ? $params['label_bank_transfer'] : 'Bank Transfer'; $_label_credit_card = 'Credit Card / PayPal'; //$_label_agreement = "I agree to the <a href='$_link_terms'>Terms of Use</a> and <a href='$_link_privacy'>Privacy Policy</a>"; } $_label_agreement = 'I agree to Terms of Use and Privacy Policy'; if (!empty($params['configs']['text_agreement'])) { $_label_agreement = strip_tags($params['configs']['text_agreement'], '<a>'); } if (empty($params['_payment_methods'])) { $_payment_methods = array(); if (!empty($params['paypal'])) { array_push($_payment_methods, array('title' => $_label_credit_card, 'value' => 'paypal')); } array_push($_payment_methods, array('title' => $_label_bank_transfer, 'value' => 'ibanking')); } else { $_payment_methods = $params['_payment_methods']; } $params['fields'] = array(); $params['fields'][] = array('name' => '', 'type' => 'div', 'value' => '', 'label' => '', 'attribute' => 'class="address address-autocomplete"'); if (!empty($params['with_salutation'])) { $params['fields'][] = array('name' => 'salutation', 'type' => 'salutation', 'value' => $_member_salutation, 'label' => $_label_salutation, 'attribute' => 'required'); } $params['fields'][] = array('name' => 'first_name', 'type' => 'text', 'value' => $_member_name, 'label' => $_label_name, 'attribute' => 'required'); $params['fields'][] = array('name' => 'phone', 'type' => 'text', 'value' => $_member_phone, 'label' => $_label_phone, 'attribute' => 'required'); $params['fields'][] = array('name' => 'address_line1', 'type' => 'text', 'value' => $_member_address, 'label' => $_label_address, 'attribute' => 'required'); $params['fields'][] = array('name' => 'country', 'type' => 'country', 'value' => $_member_country, 'label' => $_label_country, 'attribute' => 'required data-area-autocomplete="country"'); $params['fields'][] = array('name' => 'state', 'type' => 'text', 'value' => $_member_state, 'label' => $_label_state, 'attribute' => 'required data-area-autocomplete="state"'); $params['fields'][] = array('name' => 'city', 'type' => 'text', 'value' => $_member_city, 'label' => $_label_city, 'attribute' => 'required data-area-autocomplete="city"'); $params['fields'][] = array('name' => 'postal_code', 'type' => 'text', 'value' => $_member_postal_code, 'label' => $_label_postal_code, 'attribute' => 'required'); $params['fields'][] = array('name' => 'email', 'type' => 'email', 'value' => $_member_email, 'label' => $_label_email, 'attribute' => 'required'); $params['fields'][] = array('name' => '', 'type' => 'div_close', 'value' => '', 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => '', 'type' => 'subheader', 'value' => $_label_shipping, 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => 'is_set_delivery', 'type' => 'checkbox', 'value' => '', 'label' => $_label_different_address, 'attribute' => ''); $params['fields'][] = array('name' => '', 'type' => 'div', 'value' => '', 'label' => '', 'attribute' => 'class="delivery-address address-autocomplete" style="display:none;"'); $params['fields'][] = array('name' => 'delivery_first_name', 'type' => 'text', 'value' => $_member_name, 'label' => $_label_name, 'attribute' => 'required'); $params['fields'][] = array('name' => 'delivery_phone', 'type' => 'text', 'value' => $_member_phone, 'label' => $_label_phone, 'attribute' => 'required'); $params['fields'][] = array('name' => 'delivery_address_line1', 'type' => 'text', 'value' => $_member_address, 'label' => $_label_address, 'attribute' => 'required'); $params['fields'][] = array('name' => 'delivery_country', 'type' => 'country', 'value' => $_member_country, 'label' => $_label_country, 'attribute' => 'required data-area-autocomplete="country"'); $params['fields'][] = array('name' => 'delivery_state', 'type' => 'text', 'value' => $_member_state, 'label' => $_label_state, 'attribute' => 'required data-area-autocomplete="state"'); $params['fields'][] = array('name' => 'delivery_city', 'type' => 'text', 'value' => $_member_city, 'label' => $_label_city, 'attribute' => 'required data-area-autocomplete="city"'); $params['fields'][] = array('name' => 'delivery_postal_code', 'type' => 'text', 'value' => $_member_postal_code, 'label' => $_label_postal_code, 'attribute' => 'required'); $params['fields'][] = array('name' => 'delivery_email', 'type' => 'email', 'value' => $_member_email, 'label' => $_label_email, 'attribute' => 'required'); $params['fields'][] = array('name' => '', 'type' => 'div_close', 'value' => '', 'label' => '', 'attribute' => ''); if (!empty($params['with_shipping_methods'])) { $params['fields'][] = array('name' => '', 'type' => 'subheader', 'value' => $_label_shipping_methods, 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => 'shipping_value_wrapper', 'type' => 'plain_text', 'value' => '', 'label' => '', 'attribute' => ''); } if (!empty($params['with_backorder_shipping_methods'])) { $params['fields'][] = array('name' => '', 'type' => 'subheader', 'value' => $_label_backorder_shipping_methods, 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => 'backorder_shipping_value_wrapper', 'type' => 'plain_text', 'value' => '', 'label' => '', 'attribute' => ''); } $params['fields'][] = array('name' => '', 'type' => 'subheader', 'value' => $_label_payment_method, 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => 'payment_method', 'type' => 'radio', 'value' => $_payment_methods, 'label' => '', 'attribute' => 'required'); $params['fields'][] = array('name' => '', 'type' => 'subheader', 'value' => $_label_message_subheader, 'label' => '', 'attribute' => ''); $params['fields'][] = array('name' => 'message', 'type' => 'textarea', 'value' => '', 'label' => $_label_message, 'attribute' => ''); if (!empty($_label_agreement)) { $params['fields'][] = array('name' => 'agreement', 'type' => 'checkbox', 'value' => '', 'label' => $_label_agreement, 'attribute' => 'required'); } $params['fields'][] = array('name' => '', 'type' => 'submit', 'value' => 'Place Order', 'label' => '', 'attribute' => 'class="' . $_btn_class . '"'); $renderer = Renderer_Cart::getInstanceFromSmartyParams($params); $couponForm = $renderer->_getDiscountForm(array('link' => '/cart?return=' . htmlentities($_SERVER['REQUEST_URI']), 'discounts' => '')); $html = Helper_Renderer::renderForm($params) . $couponForm; return $html; }