Giter Site home page Giter Site logo

lat9 / zca-bootstrap-template Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zcadditions/zca-bootstrap-template-for-1.5.6-v2.0.0c

3.0 8.0 12.0 3.39 MB

A Bootstrap-4 template for Zen Cart versions 1.5.8 and 2.0.0. Forked from https://github.com/zcadditions/ZCA-Bootstrap-Template-for-1.5.6-v2.0.0c. See the demo site, below, for additional information.

Home Page: https://zc158.vinosdefrutastropicales.com/zc158/index.php?main_page=index

License: GNU General Public License v3.0

PHP 88.58% CSS 1.82% JavaScript 9.59%

zca-bootstrap-template's Introduction

ZCA Bootstrap Template v3.7.0 for zc158 and zc200

This Zen Cart template uses a Bootstrap foundation to provide an updated look-and-feel to your Zen Cart. Since the template is standards-based, it's easier to make layout changes to your store.

Zen Cart Links

Support Thread: https://www.zen-cart.com/showthread.php?223910-ZCA-Bootstrap-4-Template-Support-Thread

Download Link: https://www.zen-cart.com/downloads.php?do=file&id=2191

External Packages Used

Features:

  • Supports Zen Cart major versions 1.5.8 and 2.0.0, best when run on a zc158a (or zc200) installation. Validated on PHP versions 7.4 through 8.3.
  • Bootstrap 4 Framework.
  • Responsive.
  • 3 Column Layout (removes right column on product info, shopping cart & checkout pages).
  • Option to include the Product Notification and Manufacturer Info side boxes on the product info pages.
  • Mobile Friendly Drop Down Menu.
  • Tabbed Login Page.
  • Order Progress Bar on Checkout Pages.
  • Modals replace popup Windows (except shipping estimator).
  • Optional Additional Images Modal w/ Carousel.
  • Optional AJAX search from the header.
  • All pages listing products (advanced_search_results, featured_products, products_all, products_new , specials and index&cPath)
    • Use a common layout format.
    • Can use either a column or row layout, based on a configuration setting.
  • Minimal stylesheet overrides.
  • Admin controlled colors.

Useful Links:

Additional Information:

  • FAQs. View the current list of Frequently Asked Questions.

zca-bootstrap-template's People

Contributors

barco57 avatar brittainmark avatar chindraba-work avatar dbltoe avatar dennisns7d avatar drbyte avatar lankeeyankee avatar lat9 avatar marco-pm avatar prosela avatar scottcwilson avatar torvista avatar zcadditions avatar zen4all avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zca-bootstrap-template's Issues

Shipping estimator dropdown states don't change when configured as a pop-up

As reported in this Zen Cart support-thread posting, the dropdown zones aren't changing when the country is changed when the shipping-estimator is configured as a pop-up.

I'll note that the formatting of the popup is pretty 'ugly', too. I'll take this opportunity to convert the shipping estimator, for this case, into a modal rendering.

Additional client stylesheet support

I have been adding a file called includes/templates/bootstrap/css/client_styles.php to bootstrap which is pulled in as follows:

In includes/templates/bootstrap/common/html_header.php, right after the inclusion of stylesheet_zca_colors.php,

    require($template->get_template_dir('client_styles.php', DIR_WS_TEMPLATE, $current_page_base, 'css') . '/client_styles.php');

Since it's pulled in last, it has the final word on styling. This way, changes can be localized to this file, and the other 5 stylesheet_*.css files can be left unchanged.

Let me know if you'd like this in a PR.

Missing language constants for SNAF pages

With the consolidation of the products' listing for use in the SNAF-type pages, there are a couple of language constants missing. Seeing the following error

[08-Dec-2020 03:44:33 America/New_York] Request URI: /index.php?main_page=products_new, IP address: xx.xx.xx.xx
#1  include(/home/public_html/includes/modules/bootstrap/product_listing.php) called at [/home/public_html/includes/templates/bootstrap/templates/tpl_modules_product_listing.php:13]
#2  require(/home/public_html/includes/templates/bootstrap/templates/tpl_modules_product_listing.php) called at [/home/public_html/includes/templates/bootstrap/templates/tpl_products_new_default.php:25]
#3  require(/home/public_html/includes/templates/bootstrap/templates/tpl_products_new_default.php) called at [/home/public_html/includes/templates/bootstrap/common/tpl_main_page.php:189]
#4  require(/home/public_html/includes/templates/bootstrap/common/tpl_main_page.php) called at [/home/public_html/index.php:94]
--> PHP Warning: Use of undefined constant TEXT_NO_PRODUCTS - assumed 'TEXT_NO_PRODUCTS' (this will throw an Error in a future version of PHP) in /home/public_html/includes/modules/bootstrap/product_listing.php on line 272.

... and I'm guessing that the 'no products from this manufacturer' will also be required.

specials/products_new, missing manufacturers_id for listing generation.

Seeing logs similar to:

[28-May-2021 15:18:35 Europe/Berlin] Request URI: /zc157a_bs4/index.php?main_page=specials, IP address: 127.0.0.1
#1  require(C:\xampp\htdocs\zc157a_bs4\includes\modules\bootstrap\product_listing.php) called at [C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\templates\tpl_modules_product_listing.php:12]
#2  require(C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\templates\tpl_modules_product_listing.php) called at [C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\templates\tpl_specials_default.php:34]
#3  require(C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\templates\tpl_specials_default.php) called at [C:\xampp\htdocs\zc157a_bs4\includes\modules\pages\specials\main_template_vars.php:59]
#4  require(C:\xampp\htdocs\zc157a_bs4\includes\modules\pages\specials\main_template_vars.php) called at [C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\common\tpl_main_page.php:195]
#5  require(C:\xampp\htdocs\zc157a_bs4\includes\templates\bootstrap\common\tpl_main_page.php) called at [C:\xampp\htdocs\zc157a_bs4\index.php:94]
--> PHP Notice: Undefined index: manufacturers_id in C:\xampp\htdocs\zc157a_bs4\includes\modules\bootstrap\product_listing.php on line 224.

back-to-top covers continue button in checkout

back_to_top

A couple of things I have done to mitigate this; not sure which is best:

  1. edit includes/templates/bootstrap/common/tpl_main_page.php
    and wrap
<a href="#" id="back-to-top" ...

in a page check like:

<?php if (!in_array($current_page_base, explode(',','shopping_cart,checkout_shipping,checkout_shipping_address,checkout_payment,checkout_payment_address,checkout_confirmation,checkout_success'))) { ?>
  1. Edit includes/templates/bootstrap/css/stylesheet.css and change #back-to-top styling to use
     bottom: 100px;

Checkout, changing shipping/payment anomalies

On the checkout_shipping_address and checkout_payment_address pages, there are a couple of anomalies to be addressed:

  1. If a customer has only one address, only the top (enter a new address) section is displayed, giving the customer no where to 'go' if they just want to keep their current address.
  2. In the bottom (address-book list), the currently-selected address is 'indicated' as Currently Selected but the associated radio-button isn't selected.

ZCA Bootstrap Colors configuration_group_id not passed to admin_pages

Found with mod_list on all the latest 1.5.7c installs.
Mod list reports a "Missing Admin Configuration Page" for ZCA Bootstrap Colors on a standard 1.5.7c.
The configuration_group_id is created in the configuration_group table and the page_key value of toolsCZABootstrapColors is created in the admin_pages table but, the gID=## page_params is not propagated using the configuration_group_id.
Not sure that it affects actual operations but it does stop mod_list from accessing the admin page.

css is missing .forward class

Just add

.forward {float:right;}

to includes/templates/bootstrap/css/stylesheet.css

This will fix the problem shown in this image on the checkout success page:

checkout_success

Unnecessary foreach in tpl_specials_default.php

The following code in tpl_specials_default.php:

foreach ($list_box_contents as $i => $k) {
    foreach ($k as $j => $value) {
        if (!is_numeric($j)) continue;
        $list_box_contents[$i][$j]['params'] = 'class="card mb-3 p-3 centerBoxContentsListing text-center"';
    }
}

shouldn't be needed because $list_box_contents is overwritten in product_listing.php.

Checkout address changes, using wrong template and too wide on large screens

The forms rendered on the checkout_payment_address and checkout_shipping_address pages for the current v300 are using the wrong module-template to format the address block. In addition, both the new-address and select-from-addresses are displaying 100% wide on large/x-large screens and it just doesn't 'look right'.

Shipping Estimator: State name disabled when selected country has no zones

When Configuration :: Customer Details :: State - Always display as dropdown? is set to true, and the shipping-estimator's selected country doesn't have any zones, the State Name field is displayed but is disabled.

The issue arises due to a conflict between the base Zen Cart /includes/modules/shipping_estimator.php's inclusion of a call to the update_zone javascript and the bootstrap templates jscript_addr_pulldowns_zca_bootstrap.php.

Question: misspelling

Should we adjust all the constants that have misspellings in them?
eg: ZCA_BUTTON_PAGEINATION_COLOR and its variants

Remove id selector in `featured_products.php` and `specials_index.php`

id="centerBoxContentsFeatured" here (line 73 of centerboxes/featured_products.php) results in duplicate ids in the DOM:

$list_box_contents[$row][$col] = array('params' =>'class="centerBoxContents card mb-3 p-3 text-center" id="centerBoxContentsFeatured"',

I think it's safe to remove since it's not used on this template (see e.g. new_products.php that doesn't have it).

Same goes for centerboxes/specials_index.php:

$list_box_contents[$row][$col] = array('params' => 'class="centerBoxContents card mb-3 p-3 text-center" id="centerBoxContentsNew"',

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.