示例#1
0
 public function lC_Account_Address_book()
 {
     global $lC_Language, $lC_Services, $lC_Breadcrumb, $lC_Customer, $lC_MessageStack, $lC_Vqmod;
     require_once $lC_Vqmod->modCheck('includes/classes/address_book.php');
     $this->_page_title = $lC_Language->get('address_book_heading');
     if ($lC_Services->isStarted('breadcrumb')) {
         $lC_Breadcrumb->add($lC_Language->get('breadcrumb_address_book'), lc_href_link(FILENAME_ACCOUNT, $this->_module, 'SSL'));
     }
     if ($lC_Customer->hasDefaultAddress() === false) {
         $this->_page_title = $lC_Language->get('address_book_add_entry_heading');
         $this->_page_contents = 'address_book_process.php';
         $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/addressBookDetails.js.php');
         $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/form_check.js.php');
     } elseif (isset($_GET['new'])) {
         if ($lC_Services->isStarted('breadcrumb')) {
             $lC_Breadcrumb->add($lC_Language->get('breadcrumb_address_book_add_entry'), lc_href_link(FILENAME_ACCOUNT, $this->_module . '&new', 'SSL'));
         }
         $this->_page_title = $lC_Language->get('address_book_add_entry_heading');
         $this->_page_contents = 'address_book_process.php';
         $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/addressBookDetails.js.php');
     } elseif (isset($_GET['edit']) && is_numeric($_GET[$this->_module])) {
         if (!lC_AddressBook::checkEntry($_GET['address_book'])) {
             $lC_MessageStack->add('address_book', $lC_Language->get('error_address_book_entry_non_existing'), 'error');
         }
         if ($lC_MessageStack->size('address_book') == 0) {
             if ($lC_Services->isStarted('breadcrumb')) {
                 $lC_Breadcrumb->add($lC_Language->get('breadcrumb_address_book_edit_entry'), lc_href_link(FILENAME_ACCOUNT, $this->_module . '=' . $_GET[$this->_module] . '&edit', 'SSL'));
             }
             $this->_page_title = $lC_Language->get('address_book_edit_entry_heading');
             $this->_page_contents = 'address_book_process.php';
             $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/form_check.js.php');
             $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/addressBookDetails.js.php');
         }
     } elseif (isset($_GET['delete']) && is_numeric($_GET[$this->_module])) {
         if ($_GET['address_book'] == $lC_Customer->getDefaultAddressID()) {
             $lC_MessageStack->add('address_book', $lC_Language->get('warning_primary_address_deletion'), 'warning');
         } else {
             if (!lC_AddressBook::checkEntry($_GET['address_book'])) {
                 $lC_MessageStack->add('address_book', $lC_Language->get('error_address_book_entry_non_existing'), 'error');
             }
         }
         if ($lC_MessageStack->size('address_book') == 0) {
             if ($lC_Services->isStarted('breadcrumb')) {
                 $lC_Breadcrumb->add($lC_Language->get('breadcrumb_address_book_delete_entry'), lc_href_link(FILENAME_ACCOUNT, $this->_module . '=' . $_GET[$this->_module] . '&delete', 'SSL'));
             }
             $this->_page_title = $lC_Language->get('address_book_delete_entry_heading');
             $this->_page_contents = 'address_book_delete.php';
         }
     }
     if (isset($_GET['new']) && $_GET['new'] == 'save') {
         if (lC_AddressBook::numberOfEntries() >= MAX_ADDRESS_BOOK_ENTRIES) {
             $lC_MessageStack->add('address_book', $lC_Language->get('error_address_book_full'));
             $this->_page_title = $lC_Language->get('address_book_heading');
             $this->_page_contents = 'address_book.php';
         } else {
             $this->_process();
         }
     } elseif (isset($_GET['edit']) && $_GET['edit'] == 'save') {
         $this->_process($_GET[$this->_module]);
     } elseif (isset($_GET['delete']) && $_GET['delete'] == 'confirm' && is_numeric($_GET[$this->_module])) {
         $this->_delete($_GET[$this->_module]);
     }
 }
示例#2
0
 public function lC_Checkout_Payment()
 {
     global $lC_Database, $lC_Session, $lC_ShoppingCart, $lC_Customer, $lC_Services, $lC_Language, $lC_NavigationHistory, $lC_Breadcrumb, $lC_Payment, $lC_MessageStack, $lC_Vqmod;
     require $lC_Vqmod->modCheck('includes/classes/address_book.php');
     if ($lC_Customer->isLoggedOn() === false) {
         $lC_NavigationHistory->setSnapshot();
         lc_redirect(lc_href_link(FILENAME_ACCOUNT, 'login', 'SSL'));
     }
     if ($lC_ShoppingCart->hasContents() === false) {
         lc_redirect(lc_href_link(FILENAME_CHECKOUT, null, 'SSL'));
     }
     // if no shipping method has been selected, redirect the customer to the shipping method selection page
     if ($lC_ShoppingCart->hasShippingMethod() === false) {
         if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') {
             if (lC_AddressBook::numberOfEntries() < 1) {
                 lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment_address', 'SSL'));
             }
         } else {
             lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'shipping', 'SSL'));
         }
     } else {
         if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') {
             if (lC_AddressBook::numberOfEntries() < 1) {
                 lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment_address', 'SSL'));
             }
         }
     }
     // Stock Check
     if (STOCK_CHECK == '1' && AUTODISABLE_OUT_OF_STOCK_PRODUCT == '1') {
         foreach ($lC_ShoppingCart->getProducts() as $products) {
             if ($lC_ShoppingCart->isInStock($products['id']) === false) {
                 lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'SSL'));
                 break;
             }
         }
     }
     $this->_page_title = $lC_Language->get('payment_method_heading');
     if ($lC_Services->isStarted('breadcrumb')) {
         $lC_Breadcrumb->add($lC_Language->get('breadcrumb_checkout_payment'), lc_href_link(FILENAME_CHECKOUT, $this->_module, 'SSL'));
     }
     // redirect to the billing address page when no default address exists
     if ($lC_Customer->hasDefaultAddress() === false) {
         $this->_page_title = $lC_Language->get('payment_address_heading');
         $this->_page_contents = 'checkout_payment_address.php';
         $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/addressBookDetails.js.php');
     } else {
         // if no billing destination address was selected, use the customers own address as default
         if ($lC_ShoppingCart->hasBillingAddress() == false) {
             $lC_ShoppingCart->setBillingAddress($lC_Customer->getDefaultAddressID());
         } else {
             // verify the selected billing address
             $Qcheck = $lC_Database->query('select address_book_id from :table_address_book where address_book_id = :address_book_id and customers_id = :customers_id limit 1');
             $Qcheck->bindTable(':table_address_book', TABLE_ADDRESS_BOOK);
             $Qcheck->bindInt(':address_book_id', $lC_ShoppingCart->getBillingAddress('id'));
             $Qcheck->bindInt(':customers_id', $lC_Customer->getID());
             $Qcheck->execute();
             if ($Qcheck->numberOfRows() !== 1) {
                 $lC_ShoppingCart->setBillingAddress($lC_Customer->getDefaultAddressID());
                 $lC_ShoppingCart->resetBillingMethod();
             }
         }
         // load all enabled payment modules
         include $lC_Vqmod->modCheck('includes/classes/payment.php');
         $lC_Payment = new lC_Payment();
         $this->addJavascriptBlock($lC_Payment->getJavascriptBlocks());
     }
     if (isset($_GET['payment_error'])) {
         $lC_MessageStack->add('checkout_payment', urldecode($_GET['payment_error']), 'error');
     }
     if (isset($_SESSION['messageToStack']) && !empty($_SESSION['messageToStack'])) {
         $lC_MessageStack->__construct();
     }
     // ppec inject
     if (isset($_GET['skip']) && $_GET['skip'] == 'no' || isset($_GET['payment_error'])) {
         if (isset($_SESSION['SKIP_PAYMENT_PAGE'])) {
             unset($_SESSION['SKIP_PAYMENT_PAGE']);
         }
         if (isset($_SESSION['cartSync'])) {
             unset($_SESSION['cartSync']);
         }
     } else {
         if (isset($_SESSION['SKIP_PAYMENT_PAGE']) && $_SESSION['SKIP_PAYMENT_PAGE'] === TRUE) {
             lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'confirmation', 'SSL'));
         }
     }
 }
?>
<script>
var selected;

$(document).ready(function() { 
  $('#payment-address-form').show();
  if (_setMediaType() == 'mobile-portrait') {
    $('#payment-address-form').text('<?php 
echo $lC_Language->get('text_add');
?>
'); 
  }
  $('#addressBookDetails > div').removeClass('large-padding-left').addClass('padding-left');
  $('.small-margin-left-neg').removeClass('small-margin-left-neg').removeClass('no-margin-top').addClass('large-margin-top-neg');
  var paymentAddressEntries = '<?php 
echo lC_AddressBook::numberOfEntries();
?>
'; 
  if (paymentAddressEntries < 1) {
    $('#checkoutBillingAddressDetails').show();
  }
});        

$('#payment-address-form').click(function(){
 var isVisible = $('#checkoutBillingAddressDetails').is(':visible');
 var mediaType = _setMediaType();
 if (!isVisible) {
   var text = (mediaType == 'mobile-portrait') ? '<?php 
echo $lC_Language->get('text_hide');
?>
' : '<?php 
    }
    ?>
                    </div>
                  </div>
                  <?php 
}
?>
                
              </form>
              <div class="btn-set clearfix">
                <button class="btn btn-lg btn-success pull-right" onclick="$('#checkout_address').submit();" type="button"><?php 
echo $lC_Language->get('button_continue');
?>
</button>
                <?php 
if (lC_AddressBook::numberOfEntries() < 1) {
    ?>
                <button class="btn btn-lg" type="button" id="shipping-address-form"><?php 
    echo $lC_Language->get('text_cancel');
    ?>
</button>
                <?php 
} else {
    ?>
                <button class="btn btn-lg btn-primary" type="button" id="shipping-address-form" style="display:none;"><?php 
    echo $lC_Language->get('show_address_form');
    ?>
</button>
                <?php 
}
?>
            ?>
</td>
                          </tr>
                          </table>
                          <?php 
            $radio_buttons++;
        }
        ?>
                      </div>
                      <?php 
    }
}
?>
                </div>
                <?php 
if (lC_AddressBook::numberOfEntries() < MAX_ADDRESS_BOOK_ENTRIES) {
    ?>
                  <div class="" id="checkoutBillingAddressDetails" style="display:none;">
                    <h3 class="no-margin-top"><?php 
    echo $lC_Language->get('new_billing_address_title');
    ?>
</h3>
                    <p><?php 
    echo $lC_Language->get('new_billing_address');
    ?>
</p>
                    <div id="addressBookDetails">
                      <?php 
    if (file_exists(DIR_FS_TEMPLATE . 'modules/address_book_details.php')) {
        require $lC_Vqmod->modCheck(DIR_FS_TEMPLATE . 'modules/address_book_details.php');
    } else {
        $lC_MessageStack->add('address_book', $lC_Language->get('error_address_book_full'));
    }
}
?>
<!--content/account/address_book_process.php start-->
<div class="row">
  <div class="col-sm-12 col-lg-12">
    <h1 class="no-margin-top"><?php 
echo $lC_Template->getPageTitle();
?>
</h1>
    <?php 
if ($lC_MessageStack->size('address_book') > 0) {
    echo '<div class="message-stack-container alert alert-danger small-margin-bottom small-margin-left">' . $lC_MessageStack->get('address_book') . '</div>' . "\n";
}
if ($lC_Customer->hasDefaultAddress() === false || isset($_GET['new']) && lC_AddressBook::numberOfEntries() < MAX_ADDRESS_BOOK_ENTRIES || isset($Qentry) && $Qentry->numberOfRows() === 1) {
    ?>
        <div class="row">
          <form role="form" class="form-inline" name="address_book" id="address_book" action="<?php 
    echo lc_href_link(FILENAME_ACCOUNT, 'address_book=' . $_GET['address_book'] . '&' . (isset($_GET['edit']) ? 'edit' : 'new') . '=save', 'SSL');
    ?>
" method="post" onsubmit="return check_form(address_book);">
            <?php 
    if (file_exists(DIR_FS_TEMPLATE . 'modules/address_book_details.php')) {
        require $lC_Vqmod->modCheck(DIR_FS_TEMPLATE . 'modules/address_book_details.php');
    } else {
        require $lC_Vqmod->modCheck('includes/modules/address_book_details.php');
    }
    ?>
          </form>
        </div>