This website is using cookies
×
  • October 31, 2026

    Version 5.4.10.4

    Checkout from the cart panel. The open cart panel offered only a Show Cart link. It now ends with a Check Out Now button, shown once the cart has products and kept in step when products are added without a page reload.

    Added-to-cart pop-up. Continue Shopping and Show Cart showed as bare text in a box sized to them. They are now proper buttons, and on a small phone the pop-up fits the screen.

    Print view and shop pop-ups in the template's colours. In the print view and VirtueMart's pop-up windows, links and buttons (such as Login) came out in Bootstrap blue; they now use the template's colours.

    Account and checkout forms. Every row of the registration and account forms had a line above and below it; the lines are gone, and the inputs' own borders separate the entries.

    Phone header. Opening a phone panel (search, account, cart) no longer dims the logo and menu buttons at the top of the page.

    Phone tab labels. On phones the home tabs read 0, 1 and 2 (the template printed each tab's number there); they now show their titles.

    Product cards on touch screens. The card's Add to Cart panel lies over the product name and only appears on mouse hover, so on a phone it was invisible but still took the tap: tapping a product's name added it to the cart. On touch screens the name now opens the product page (where Add to Cart is); mouse users keep the hover panel.

    Login pop-up. The login pop-up was capped at 350px, so the form scrolled inside it; it now shows the whole form.

    Checkout page on phones. The shipment and payment boxes ran their text against their own left edge. They now have the same inset as the rest of the page.

    Ask a question and menu links. Guests can now use Ask a question without logging in first, and the demo's Contact Us and Special Offers menu items, which pointed nowhere, open the contact page and the shop (Quickstart).

    Forms. On the login page the username box was narrower than the password field beside it. Every text field in the login, registration and account forms now takes the full row.

    Phone headings. On the contact page the page heading started 30px in on a phone (two paddings stacked); it now lines up with the text at 20px.

    Module positions. The template tested pairs of module positions (the two footer columns) with a Joomla 3 expression that Joomla 4 and later read as a single position name, so the test always failed; each position is now checked on its own.

    Print view on phones. The print view had no mobile viewport, so on a phone it showed a shrunken desktop page; it now fits the screen.

    Error page. An error caused by a missing item no longer prints the server's file paths.

    Defaults for a fresh install. The site name / logo now links to the home page and the slideshow is switched on with autoplay on desktop and phones (logoLinked, cam_turnOn, cam_autoAdvance, cam_mobileAutoAdvance default to on). Existing sites keep their saved settings.

    Quickstart. The contact page's image pointed at a file that does not exist; it is cleared. The sample menu links Parks and Shop pointed at pages that do not exist; they are unpublished. The site's meta description named another template; it names this one.

    Shared stylesheet. The template's Bootstrap compatibility stylesheet is updated to the current version used across our templates. Your own template settings are not changed.

    Removed. 26 JavaScript and CSS files nothing loads (356 KB), among them jQuery 1.8.1, Superfish, Modernizr and old Internet Explorer stylesheets; the unused Bootstrap 2 stylesheets (css/bootstrap/, css/bootstrap.css and the print stylesheet's import of it); 9 template options nothing read (old drop-down menu effect settings and similar); template code that read settings the template never offered; stylesheet references to 11 images that do not exist, and links to stylesheets that do not exist.

    October 19, 2026

    Version 5.4.10.3

    Template Options screen. The icons on the template's Options screen came from Font Awesome 4.6.3 on MaxCDN, which no longer serves it, so they were missing. They now load Font Awesome 6.5.2 with its version 4 name shims from cdnjs.

    Quickstart. Joomla's Language Overrides search list shipped filled with several thousand strings indexed on the original developer's computer, file paths included. It is now empty; Joomla fills it again when you refresh it in Language Overrides.

    October 19, 2026

    Version 5.4.10.2

    Security. The template's menu layouts printed a menu item's note and link exactly as entered, so markup typed into a menu item's Note or Link field reached the page. Both are now escaped, as Joomla's own menu layouts do.

    Colours with transparency. A colour chosen with the colour picker's opacity slider (saved as an 8-digit colour such as #rrggbbaa) was replaced with black. Colours with transparency are now used as chosen.

    October 19, 2026

    Version 5.4.10.1

    Menu buttons and product extras. The menu buttons shown at tablet width, and the product modules' buttons that reveal a product's extra fields, did nothing and raised a script error. The small script they call had been removed by mistake and is back.

    Side Pop Up Box. The tabs of the Side Pop Up Box (the header-left and header-right positions) no longer opened their panels. They open and close again.

    Print view and pop-ups. The print view and VirtueMart's pop-up windows (such as “Ask a question”) still loaded the template's old Bootstrap 2 copy, an Internet Explorer stylesheet and a stylesheet that does not exist. They now load Bootstrap 5 and the compatibility stylesheet, like the rest of the template.

    Security. The product image zoom settings (zoom type, lens shape, lens size and cursor) are now checked before they are written into the product page's script.

    Download. The readme in the download folder described another template; it now names this one.

    October 15, 2026

    Version 5.4.10

    First Joomla 5 native release. Veva has been brought forward from the previous download (07.07.2025 5.3.0/4.4.4) to Joomla 5.4.10 + VirtueMart 4.8.4 + PHP 8 + Bootstrap 5. Veva keeps its Bootstrap 2 layout classes in its overrides and module content and renders on Joomla 5’s Bootstrap 5 through a compatibility stylesheet. This release adds a full phone layout with a toolbar and a store-category menu, a colour picker for all 108 colour settings, Joomla’s own on/off switches, a favicon tool, current social networks and an update-safe Custom CSS option. Every Joomla 3 class call is gone (203 → 0), and the settings index.php writes into the page are escaped. jQuery still loads for the slideshow, the product carousels and the image zoom; the old jQuery menu, background and Internet Explorer scripts are no longer loaded. Across the template, 17 files were added, 23 removed and 42 modified (262 → 256 files). The template version now matches the Joomla version it ships with.

    Added

    Bootstrap 5 compatibility layer

    • New css/bs2-bs5-bridge.css: maps Veva’s Bootstrap 2 markup onto Joomla 5’s bundled Bootstrap 5. It covers the Bootstrap 2 grid (.row-fluid, .spanN widths and offsets at 1170 px, nested fluid rows), the responsive utilities (hidden-phone, visible-phone, hidden-tablet, visible-desktop and the rest), tab panes, the modal shell (.in → .show), Bootstrap 2 base typography, and the VirtueMart product grids.
    • The stylesheet is linked immediately before </head>, after the template’s own stylesheets, with a file-time version marker so an update shows straight away.
    • Joomla’s own icon classes, which Cassiopeia styles but a third-party template does not, now draw Font Awesome 6 glyphs: the password show/hide eye (icon-eye), the pagination arrows (icon-angle-left, -right, -double-left, -double-right), about 50 classes in all.
    • New js/cs-jq-compat.js: restores the three jQuery 1.x calls that Joomla 5’s jQuery 3 removed but the bundled slideshow still uses (.live(), .offset() on the window, and .load(fn) as a load-event shortcut).

    Phone layout

    • New js/cs-mobile-generic.js: on phones (up to 767 px) Veva gets a compact header with the logo on the left and a menu button that opens the main menu as a slide-out panel.
    • A phone toolbar of six fingertip-sized buttons: Section menu, Log in, Register, Search, Follow us (the social links) and Cart.
    • Section menu opens the shop’s category tree (for example Cameras > Compact / DSLR), with +/− to open subcategories and the current category marked. It is built from a VirtueMart Category module placed in the new cs-secondary position, using the new layout html/mod_virtuemart_category/csplain.php. It is styled like the main slide-out menu.
    • New js/cs-cart-into-utility.js: on phones the cart moves from the desktop header into the toolbar, and goes back when the window is widened.
    • A red cart count badge on the cart icon, on desktop and on the phone toolbar, shown when the cart holds items. It updates after Add to Cart without a page reload.
    • The login dialog and VirtueMart’s “added to cart” confirmation fit the phone screen.
    • The cart page on phones shows one labelled card per product (price, quantity, tax, total), with full-width billing, shipping and checkout buttons, so nothing runs off the screen.
    • Login, checkout, coupon and quantity fields use a 16 px font, so iPhones do not zoom the page when you tap into them.
    • On account pages (login, registration, password reset, VirtueMart account), phones show the page content first, with only the breadcrumbs and the store category menu above it.
    • The content column and the bottom module band keep a 15 px side inset (they were 3 px from the screen edge), and the slideshow caption starts 20 px in.
    • The footer social icons sit clear of the footer divider line.
    • On touch screens the slideshow’s previous/next arrows are always visible. camera.js showed them only on mouse hover, so a phone had no way to step through the slides.
    • The product carousels’ previous/next controls are 44 px chevron buttons inside both edges of the carousel.

    Password show/hide

    • New js/cs-password-reveal.js: adds an eye button to the password field of the header Login form (the mod_login module), which Joomla does not decorate. Fields Joomla already gives an eye to (the login and registration pages) are left alone, so no field shows two.

    Own error pages

    • error.php rewritten: “Page not found” (404) and “access denied” (403) pages are shown inside the template, with its header, menus, phone toolbar and footer, and fit a phone screen. Server errors (5xx) use Joomla’s minimal system page, because the database or a module may be what failed.

    Colour picker

    • New custom field fields/colorpicker.php with the bundled Coloris picker (js/coloris.min.js, css/coloris.min.css). All 108 colour settings are now type="colorpicker", with a live swatch and a picker that ships inside the template.
    • New fields/adminui.php: help rows in the Options screen run across the form instead of a narrow 160 px column, and the template’s Details panel follows Joomla’s light or dark admin theme.

    Favicon tool

    • New Favicon tab (fieldset faviconsettings) with a media field (favicon) and a crop tool (favicontool, fields/favicontool.php): pick any image, drag a square over the part you want, and the template creates the device icon set (favicon.ico plus PNG sizes). The template’s own favicon.ico is the fallback. With thanks to Gianluca, whose favicon question inspired this tool.
    • index.php outputs the icon links through two new helpers, phFaviconSet() and phIcoBytes().
    • 10 new language strings in en-GB.tpl_veva.ini (74 → 84), TPL_VEVA_FAVICON_* and TPL_VEVA_FAVICONTOOL_*.

    Modern social network support

    • Five new social services, each with a URL field and an on/off switch: Threads, Bluesky, Mastodon, TikTok and Discord (threads/threadsON, bluesky/blueskyON, mastodon/mastodonON, tiktok/tiktokON, discord/discordON).
    • The Twitter slot is now X (formerly Twitter). With Facebook, Instagram, LinkedIn, YouTube, Vimeo, Pinterest and RSS, Veva supports 13 networks.

    Update-safe Custom CSS

    • New Custom CSS field (customcss) on the Header & Footer Custom Code tab. It is stored in the database, so a template update never touches it.
    • A css/custom.css file, if you create one, is loaded automatically. It is deliberately not part of the package, so an update cannot overwrite or remove it.
    • Both load after the template’s own stylesheets and the compatibility stylesheet, so your rules win.

    Security helpers

    • 13 new helper functions in index.php: phEsc(), phHexColor(), phCssDim(), phCssNum(), phCssFont(), phCssSelector(), phCssToken(), phCssUrl(), phJsStr(), phJsLit(), phRichText(), phFaviconSet(), phIcoBytes(). They are used at 290 call sites in index.php and component.php. Details under Security.

    Changed

    Joomla 5 platform

    • Built for Joomla 5.4.10 and VirtueMart 4.8.4 (previous download: Joomla 5.3.0 / VirtueMart 4.4.4).
    • The template loads Joomla 5’s bundled Bootstrap 5 (/media/vendor/bootstrap/css/bootstrap.min.css) in place of its own Bootstrap 2 copy (css/bootstrap/bootstrap.min.css, bootstrap-responsive.min.css, bootstrap-extended.css).
    • The page layout in index.php uses Bootstrap 5 grid classes (50 .col-md-N columns in .rows). The template’s grid rules in css/responsive.css, css/responsive-template.css and css/layout.css gained matching .col-md-N / .row selectors. Overrides and module content keep their Bootstrap 2 classes, which the compatibility stylesheet renders.
    • The header Login form opens as a Bootstrap 5 dialog (data-bs-toggle / data-bs-target / data-bs-dismiss, .modal-dialog-centered) in place of the Bootstrap 2 data-toggle="modal" box.
    • templateDetails.xml version 07.07.2025 5.3.0/4.4.4 → 5.4.10; the version shown in the template description and the new @version docblock in index.php match. creationDate 07/01/2016 → 2026-10-15; authorUrl now https://. method="upgrade" is kept, so an existing install updates in place.

    J3 → J5 API migration

    • All Joomla 3 static calls removed (203 in the previous download → 0): JRoute → Route, JHtml/JHTML → HTMLHelper, JText → Text, JFactory → Factory, JURI → Uri, JModuleHelper → ModuleHelper, JPluginHelper → PluginHelper, JComponentHelper → ComponentHelper. These aliases exist only while Joomla’s Behaviour – Backward Compatibility plugin is enabled, and not at all in Joomla 6.
    • Calls that had no simple rename: JDispatcher::getInstance()->trigger() in the VirtueMart login override → Factory::getApplication()->triggerEvent(); JDocumentHTML::countModules() in index.php (2) → $this->countModules().
    • Files converted (calls before → after): index.php 19 → 0, and the overrides:
      • html/mod_login/default.php 20 → 0; html/com_virtuemart/user/login.php 19 → 0, user/edit_address.php 6 → 0.
      • html/mod_virtuemart_product/single.php 9 → 0, default.php 7 → 0.
      • html/com_virtuemart/virtuemart/default_products.php 9 → 0, default.php 1, default_categories.php 1 → 0.
      • html/com_virtuemart/category/default.php 8 → 0, categories.php 1 → 0.
      • html/com_virtuemart/productdetails/default.php 8 → 0, default_reviews.php 3, default_showcategory.php 1 → 0.
      • html/com_virtuemart/cart/default_pricelist.php 5 → 0, default_address.php 2, default_coupon.php 1 → 0.
      • html/com_virtuemart/askquestion/form.php 3, bs3-form.php 3, mail_html_question.php 2 → 0.
      • html/com_virtuemart/sublayouts/addtocart.php and addtocartbar.php 1 each → 0; html/mod_virtuemart_manufacturer/default.php 2, mod_virtuemart_currencies/default.php 2, mod_virtuemart_cart/default.php 1, mod_search/default.php 1 → 0.
    • In all, 33 of the 47 PHP overrides under html/ were modified.

    Template Options screen

    • 169 field type changes in templateDetails.xml. The 61 remaining legacy class="switch" checkboxes (65 before; four belonged to retired social services) are now Joomla’s native on/off switchers, for example RSSON, H1TitleImgText, cam_autoAdvance, cam_hover, cam_navigation, useZoom. With the five new social switches the template has 66 switchers and no legacy checkboxes. The 108 colour settings (e.g. cam_loaderColor, cam_loaderBgColor) changed from color to colorpicker.
    • Fields 291 → 298, tabs 12 → 13. Tab names no longer end in “Settings” (Basic, Site Name & Slogan, Drop Down Menus, Header & Footer Custom Code, Built-in Slideshow, Product Slider, Testimonials Slider, Manufacturers Slider, Product Images, Side Pop Up Box, Theme).

    Fonts and icons

    • The Google Fonts WebFontConfig JavaScript loader (Google’s webfont.js) is replaced by a direct stylesheet link for Roboto, with preconnect hints (WebFontConfig 1 → 0).
    • The front end loads Font Awesome 6.5.2 (all.min.css) with v4-shims.min.css, in place of two Font Awesome 4 stylesheets (4.6.3 and 4.3.0) from the shut-down MaxCDN. The template’s existing fa fa-* markup keeps working.
    • Social icons are Font Awesome 6 brand glyphs (fab fa-*) with screen-reader labels, in place of one PNG image per network.

    Menus and backgrounds without old jQuery plug-ins

    • Drop-down menus open on hover with CSS instead of the Superfish/Supersubs plug-ins. A 0.6 s grace period keeps a drop-down open while the pointer moves from the menu bar down into it; moving across to another menu item closes it at once.
    • The Drop Down Menus tab’s on/off, opacity, height, width and speed settings (usedropdown, dropopacity, dropheight, dropwidth, dropspeed) drove the Superfish animation and no longer have an effect. The column-width and mega-menu settings still apply.
    • The body background image and the #top-long and #customers-box background images are sized with CSS background-size: cover instead of the Backstretch plug-in.
    • jQuery itself still loads, for the camera slideshow, the Owl product carousels, the product image zoom and scrollReveal. Template-side jQuery call sites: 145 → 85.

    Store pages

    • The product-page overrides in html/com_virtuemart/productdetails/ are Veva’s own layouts: default.php, default_images.php, default_reviews.php, default_showcategory.php, plus the new default_customfields.php, default_relatedcategories.php and default_relatedproducts.php. The previous download carried copies of VirtueMart’s stock product-page layouts in this folder instead, so the template’s Zoom Images Script setting (useZoom, elevateZoom) had no effect. It works again.
    • The Register link in the header goes straight to the registration fields (#email_field). VirtueMart sends registration to its account page, which opens with the login form, so on a phone the whole first screen was login and the registration fields were out of sight.

    Fixed

    • Every “page not found” returned a server error when Joomla’s backward-compatibility plugin was off (and always on Joomla 6). error.php used JError::raiseWarning() and JText; it now uses the Joomla 4+ API.
    • The VirtueMart login and account page returned a server error on Joomla 5. html/com_virtuemart/user/login.php called behavior.formvalidation (“behavior::formvalidation not found”) and behavior.modal, both removed in Joomla 4, and the old JDispatcher class, also gone since Joomla 4. It now uses behavior.formvalidator and Joomla’s event dispatcher, and the modal call is gone. With thanks to Zoltán Szász, whose report led to the formvalidation fix across our templates.
    • With current VirtueMart, Add to Cart could do nothing. The button showed a spinner that never finished and nothing went into the cart, because html/com_virtuemart/sublayouts/addtocart.php and the home-page product form in html/com_virtuemart/virtuemart/default_products.php did not send the security token VirtueMart requires. Both now include it.
    • The password reset, login and username reminder forms did not show when they had no menu item of their own. Such pages borrow the home menu item and its “[Hide Content Handler on front page]” style, which hides #content-handler. index.php now shows the content on those pages.
    • The slideshow script loaded twice on every page: camera.min.js and camera.js were both enqueued. Only camera.js loads now.
    • Fixes from a maintenance pass across our templates:
      • The @font-face in css/template.css pointing at the removed media/jui/fonts/ IcoMoon font is disabled; it caused four failed font requests on every page.
      • Joomla’s pagination arrows (icon-angle-*), which a third-party template left as empty squares, are mapped to Font Awesome glyphs (see Bootstrap 5 compatibility layer).
      • Featured-article intro text is no longer clipped to its title in the one-column featured layout (.blog-featured .blog-item).
      • The search button sits flush with its search box (#search-position .btn).
      With thanks to Michael Mullan, whose Expression bug report led to this maintenance pass across our templates.

    Removed

    Legacy scripts and stylesheets no longer loaded

    • Scripts: superfish.js, supersubs.js, jquery.backstretch.min.js, jquery.mobile.customized.min.js, camera.min.js (the duplicate), modernizr.js, selectivizr-min.js. These files remain in js/ but nothing loads them. Also gone: the html5shiv script from http://html5shiv.googlecode.com, Google’s webfont.js, and the inline jQuery.browser shim.
    • Stylesheets: the Bootstrap 2 copy (css/bootstrap/bootstrap.min.css, bootstrap-responsive.min.css, bootstrap-extended.css), the two MaxCDN Font Awesome 4 stylesheets, and the Internet Explorer files ie.css and ie6.css with their conditional comments. index.php no longer loads ie9-10.css; the old error page’s reset.css and presets/style-error.css are no longer used.

    Files removed

    • 22 copies of VirtueMart’s stock product-page layouts from html/com_virtuemart/productdetails/: the bs3-* set (bs3-default.php, bs3-default_images.php, bs3-default_images_additional.php, bs3-default_manufacturer.php, bs3-default_pdf.php, bs3-default_reviews.php, bs3-default_showcategory.php, bs3-notify.php), the bs5-* set (7 files), and default_images_additional.php, default_manufacturer.php, default_pdf.php, mail_html_notify.php, mail_raw_notify.php, multiadd.php, notify.php. VirtueMart’s own current versions are used for these views.
    • utils/admin-js.js, a Joomla 3 admin script, and the <script> tag in the template description that loaded it.

    Retired social services

    • Four social slots removed with their switches: Google+ (gplus), StumbleUpon, Digg and Blogger.

    Security

    • Every template setting index.php writes into the page is escaped for where it appears (223 unescaped $this->params->get() echoes before), through the new helpers:
      • phEsc() for HTML text and attributes.
      • phHexColor() for colours.
      • phCssDim(), phCssNum(), phCssFont(), phCssToken(), phCssSelector() and phCssUrl() for values inside inline <style>.
      • phJsStr() and phJsLit() for values inside inline JavaScript (slideshow and carousel settings, background images).
      The header and footer custom-code fields and the new Custom CSS field are administrator code and are written as entered, by design.
    • Site-title fields (H1Title / H2Title) go through phRichText(): formatting markup is kept, but scripts, styles, iframes and on* event handlers are stripped. Before, they were printed as entered.
    • Image alt text built with strip_tags() did not escape quotes; the 3 occurrences in index.php now go through phEsc(strip_tags(…)).
    • Social links escape their URLs and open with rel="noopener".
    • Module, menu and tab titles are escaped in index.php and in the overrides: the module chromes html/layouts/chromes/megamenu.php, slides.php, vmdefault.php, vmtab.php and html/modules.php, plus mod_login, mod_menu, mod_custom and mod_virtuemart_cart. htmlspecialchars/escape calls across the template rose from 3 to 33.
    • The error page escapes the error message it prints.
    • component.php (print view and VirtueMart pop-ups) escapes the colour-preset name it writes into a stylesheet link.

    Quickstart Installer

    The Quickstart is a complete Joomla 5.4.10 site with VirtueMart 4.8.4 and Veva installed as the active template, with the demo content. It now installs through Joomla’s own installation wizard; the previous Quickstart was an Akeeba .jpa archive with Kickstart.

    • Bundled extensions: MCP For J 2.8.3, StageIt 5.7.3, Akeeba Backup 10.4.0, Weblinks 5.1.0.
    • Only the templates the site uses are included: the templates/ folder holds cassiopeia, system and veva. VirtueMart’s demo templates horme_3, vmbeez3 and vmbasic are gone; horme_3 and vmbeez3 carried error pages that returned a server error.
    • The phone Section menu is ready to use: a VirtueMart Category module (“Store Categories”, layout veva:csplain) is published in the cs-secondary position on all pages.
    • The slideshow’s navigation arrows are switched on (cam_navigation), as is the product image zoom.
    • Joomla 5.4’s “What’s New” guided tour (tour 15) no longer starts by itself (autostart = 0).
    • Joomla’s Statistics plugin is set to never send data.
    • A clean starting state: the action log is empty, and 5 of the 16 post-install messages stay on (Joomla’s welcome, privacy, multi-factor authentication, action-log and automatic-update notices). The template-override change list is empty, so there is no “changes found” warning.

    Package format

    • Standalone template: Veva now installs as a Joomla package (pkg_veva-5.4.10.zip, manifest pkg_veva.xml) that installs and registers the veva template extension. It declares method="upgrade", so an existing Veva updates in place, and <blockChildUninstall>true</blockChildUninstall>, so the template is removed through the package rather than on its own.
    • Quickstart bundle: veva-quickstart-J5.4.10.zip, a complete Joomla 5.4.10 install with VirtueMart 4.8.4 and Veva pre-loaded as the active template.
    Version numbering: from this release the first three digits of Veva’s version match the Joomla release it is built for (5.4.10 = Joomla 5.4.10). A later fix on the same Joomla release adds a fourth digit (5.4.10.1). The previous download was versioned 07.07.2025 5.3.0/4.4.4: a Joomla 4/5-compatible build still on Bootstrap 2 and Joomla 3 class calls.
    July 7, 2025

    Version 07.07.2025 5.3.0/4.4.4

    • Update - Template updated to Joomla 5.3.0
    • Compatible with Virtuemart Version 4.4.4
    February 15, 2024

    Version 13.02.2024 5.0.2/4.2.6

    • Update - Template updated to Joomla 5
    • Compatible with Virtuemart pre-release Version 4.2.6
    • Please Note: VirtueMart 4.2.4,is not compatible with the Joomla 5, 
      therefore no Joomla 5 Quickstart until VirtueMart Version 4.2.6 is publicly released. 
    April 10, 2023

    Version 01.04.2023 4.2.8/4.0.12

    • Fixed - Template updated to be compatible with Joomla 4.2
×

logo


TOP
Connect