Electra Shop Changelog
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.
Add to Cart. The quantity box and its +/- buttons, which are invisible, lay over the Add to Cart button and took the click, so clicking Add to Cart (on the product pages and the home page product lists, desktop and phone) did not add the product. The button now takes the click; the quantity still goes with it.
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, and on the smallest phones the titles wrap and fit their tabs.
Menu links. The demo's Special Offers and Contact Us menu items pointed nowhere; they open the shop and the contact page (Quickstart).
Forms. On the login page the username box was 499px wide beside a 832px password field. Every text field in the login, registration and account forms now takes the full row.
Second phone menu. The second phone menu button repeated the main menu; it now shows the site's Main Menu, with all its levels, on every page.
Phone header. The phone menu script is updated to the current version: opening a phone panel no longer dims the logo and menu buttons, and tapping outside an open panel closes it.
Phone spacing. On phones the error page title started 40px in and the contact page heading 32px (paddings stacked); both now line up with the text at 20px.
Module positions. The template tested pairs of module positions (the two footer columns and the two header positions beside the slideshow) 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_mobileAutoAdvancedefault to on). Existing sites keep their saved settings.Quickstart. The sample Atomic, Beez 20 and Beez 5 category pages showed broken thumbnails of Joomla 3 templates; the broken images are removed. A copy of another template (
templates/eclipse, not installed) and a 900 KB zip of this template sat in the site's templates folder; both are removed.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. 24 JavaScript and CSS files nothing loads (345 KB), among them jQuery 1.8.1, Superfish, Modernizr and old Internet Explorer stylesheets; the unused Bootstrap 2 stylesheets (
css/bootstrap/); stray archives inside the template (css/bootstrap.zip); 7 template options nothing read (old drop-down menu effect settings and similar); template code that read a setting the template never offered, and a reference to a script that does not exist; a reference to a module style the template does not have (login pop-up); stylesheet references to 12 images that do not exist, and links to stylesheets that do not exist.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.
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.Version 5.4.10.1
Page language. The page had no opening
<html>tag, so browsers, screen readers and search engines were not told the page's language or text direction. It now declares both from the site's language settings.Version 5.4.10
Joomla 5.4.10. The Quickstart now installs Joomla 5.4.10 (Joomla 5.4.10 release notes), and the template version is now 5.4.10 to match.
Error pages. "Page not found" and "access denied" pages now show inside the template, with its header, menus and footer, and fit a phone screen.
Quickstart. A fresh install no longer lists stale update notices.
Version 5.4.9.1
Quickstart fix. The Quickstart no longer fails to install on MySQL hosts with a "prepared statement protocol" error. Thanks to Iryna for reporting this. The template itself is unchanged apart from its version number.
Quickstart. Removed leftover files from the quickstart's top folder.
Version 5.4.9
Joomla 5.4.9. The Quickstart now installs Joomla 5.4.9, a security and bug-fix release (Joomla 5.4.9 release notes), and the template version is now 5.4.9 to match. There are no visual changes. Installing the template update does not update Joomla itself; update Joomla from System → Update → Joomla.
Version 5.4.8.5
Fix. After the previous security update, print and email views, popup windows and the VirtueMart checkout step (pages served with
tmpl=component) could return an error page. The template'scomponent.phpnow defines the escaping helper it uses. There are no visual changes. Please update if you installed the previous version.Version 5.4.8.4
Security update. Module, menu and tab titles are now escaped wherever the template writes them into your pages (module headings, title attributes and the mega menu), so a title containing a quote or markup can no longer break out of its place in the page. There are no visual changes. Recommended for all sites.
Version 5.4.8.3
Security update. Every template setting that is written into your pages is now escaped for the place it lands in (HTML, attributes, CSS and JavaScript), so a setting value can no longer break out of its context. The error page now escapes its message and title too. There are no visual changes. Recommended for all sites.
Version 5.4.8.2
Fixed a problem where a large logo could fill the whole screen on phones. The stylesheet that keeps this template working with current Joomla was letting the header logo draw at its own full size on small screens instead of scaling it down to fit the space, so a logo wider than the phone screen — common, since logos are usually exported at 1500 pixels or more to stay sharp — pushed the header out and showed visitors a giant close-up of one or two letters instead of the site. Logos now scale down to fit on every screen size, and a logo already small enough to fit is displayed exactly as before. Update the template to pick this up; if you built your site from the Quick Start, a rebuilt one is on your downloads page.
Version 5.4.8.1
Maintenance release.
- Fixed: add-to-cart forms were missing their security token. Affected add-to-cart buttons in the product listings and on the product detail page. This release ships the corrected forms.
Both the template package and the Quick Start have been rebuilt for this release. Download the latest from your member area.
Version 5.4.8
First Joomla 5 native release, and the first Electra Shop release from Cybersalt. Electra Shop has been brought forward from the previous download (16.12.2024 5.1.2/4.2.12, built for Joomla 5.1.2 and VirtueMart 4.2.12) to Joomla 5.4.8 + VirtueMart 4.8.0 + PHP 8 + Bootstrap 5. It stays on Joomla 5: Joomla 6 removes the backward-compatibility layer VirtueMart still depends on. The page layout inindex.phpnow uses Bootstrap 5 rows and columns; the VirtueMart overrides and module content keep their Bootstrap 2 classes and are laid out on Joomla 5’s Bootstrap 5 by a new compatibility stylesheet, so existing content keeps its layout. This release adds a phone layout with a slide-out menu and a control row that includes the cart, a real colour picker for all 85 colour settings, Joomla’s own on/off switches, a favicon tool, Font Awesome 6 and current social networks. Every Joomla 3 class call is gone (176 → 0), and the VirtueMart login page and the “page not found” page no longer return a server error. jQuery still loads for the camera slideshow and the side menu panel; the Superfish/Supersubs, Backstretch, jQuery Mobile and Internet Explorer scripts are no longer loaded. Compared with the previous download: 269 → 280 files, 16 added, 5 removed, 33 modified. The template version is now 5.4.8, matching the Joomla release it is built for.Added
Bootstrap 5 compatibility layer
- New
css/bs2-bs5-bridge.css(revision2026-08-19.75, 178CS-PATCHblocks), loaded in the page head with a file-time version marker so changes show straight after an update. It lays Electra Shop’s Bootstrap 2 markup out on Joomla 5’s bundled Bootstrap 5:- the Bootstrap 2 grid (
.row-fluid,.spanN, offsets, nested fluid rows), including list-based product grids, whose gutters are restored so “Latest products”, “Featured products”, “Customers choice” and “Special offer” fill their row; - the responsive utilities (
hidden-phone,visible-phoneand the tablet/desktop pairs), tab panes, collapse, clearfix and container widths; - Bootstrap 2 dialogs, which mark an open dialog
.inwhere Bootstrap 5 expects.show; - Joomla 4/5’s
icon-*classes mapped to Font Awesome 6 glyphs (pagination arrows, the password show/hide eye), and the old Glyphicons image sprite switched off; - a transparent hover bridge under each drop-down menu, so the menu stays open while the pointer moves down into it.
- the Bootstrap 2 grid (
- New
js/cs-bs2-modal-shim.js: wraps any dialog written in the Bootstrap 2 shape in the.modal-dialog/.modal-contentwrappers Bootstrap 5 requires, before Bootstrap opens it. It applies to every dialog in the template, not just the log-in box. - New
js/cs-jq-compat.js: restores three jQuery 1.x calls that Joomla 5’s jQuery 3.7 removed but the bundled scripts still use:.live()(the camera slideshow binds its controls with it),.offset()on the window, and.load(fn)as a load-event shortcut.
Phone layout (up to 767 px)
- New
js/cs-mobile.js: a menu button in the header opens a slide-in menu built from the site’s real nested menu, with sub-menus that expand in place. - A row of controls under the site name, 44 px tap targets: Section menu (built from the sidebar menu, or from the main menu where a page has none), Log in, Register, Search (a full-width panel with a finger-sized field and its own Search button) and Follow us (the social links).
- New
js/cs-cart-into-utility.js: the VirtueMart cart joins the end of that row on phones, sized and coloured to match the buttons beside it. The live cart module is moved rather than copied, so VirtueMart’s item count and cart drop-down keep working, and it goes back to its desktop place when the window widens. It waits for the row to be built, so the cart also appears on a first, uncached page load. Before, the cart stayed where the desktop layout put it, underneath the menu button. - Pages lead with their own content. The sidebar’s modules used to stack above it: on the account page you landed on a menu, a category list and a random product before reaching your account details. Nothing is hidden; the sidebar now follows the content.
- Products show two to a row, at equal height, with every Add to Cart button on a common line, in every product list the shop draws. Manufacturer logos also pair up two to a row.
- Text-entry fields are 16 px and at least 44 px tall, so iPhones do not zoom the page when you tap into one.
- The account page’s log-in form (
#com-form-login) has full-height fields and a full-size Login button, and the “Remember me” box sits beside its label. - Registration and profile fields, which VirtueMart lays out as a table, fill the width of the screen; contact and other component forms stack to full width.
- The log-in dialog fits the screen and its close button is a 44×44 target.
- Module content keeps an even side margin instead of a desktop-sized one, the page cannot be pushed sideways, and the “Main Menu” heading whose links now live in the slide-out menu is no longer left on the page.
- The fixed “Follow Us” pull-tab is hidden on phones. It opened only on hover, which a touch screen never sends; the Follow us button covers it.
- The slideshow’s position dots sit inside the picture, with a dark ring so they show on any slide. Before, half of the strip hung below the picture onto the white page.
Favicon tool
- New Favicon tab (fieldset
faviconsettings) with a media field (favicon) and a favicon tool (fields/favicontool.php). Pick one image and the template outputs a 32×32 tab icon and a 180×180 Apple touch icon, cached inimages/favicon-generated/; without one it uses the template’sfavicon.ico. With thanks to Gianluca, whose favicon question inspired this tool. index.phpbuilds the set through two new helpers,phFaviconSet()andphIcoBytes().- 10 new language strings in
en-GB.tpl_electrashop.ini(74 → 84), e.g.TPL_ELECTRASHOP_FAVICON_TAB,TPL_ELECTRASHOP_FAVICON_LABEL,TPL_ELECTRASHOP_FAVICONTOOL_CREATE.
Colour picker and Options screen
- New custom field
fields/colorpicker.phpwith the Coloris picker shipped inside the template (js/coloris.min.js,css/coloris.min.css), so nothing is fetched from another site. All 85 colour settings use it. - New
fields/adminui.php: Options-screen styling for this template. The favicon help text runs across the top of its tab instead of a narrow column, and the template’s Details panel stays readable in Joomla’s dark admin theme.
Modern social network support
- Six new social services, each with a URL field and an on/off switch: Threads, Bluesky, Mastodon, TikTok, Pinterest and Discord (
threads/threadsON…discord/discordON), defaulting to#TYPE-URL-HERE. - The Twitter setting is labelled X (formerly Twitter) and shows the X logo.
- All 13 social links (X, Facebook, Instagram, Threads, Bluesky, Mastodon, LinkedIn, YouTube, TikTok, Vimeo, Pinterest, Discord, RSS) are Font Awesome 6 brand icons (
fab fa-*) centred in their circles, replacing the old PNG images.
Security helpers
- New helper functions in
index.php:phEsc(),phHexColor()andphCssDim(), used at 156 places, plus the two favicon helpers. Details under Security.
Changed
Joomla 5 platform
- Built for Joomla 5.4.8 and VirtueMart 4.8.0. Joomla’s Behaviour – Backward Compatibility plugin stays enabled, because VirtueMart requires it; switching it off breaks the store.
- The template renders on Joomla 5’s bundled Bootstrap 5 (
/media/vendor/bootstrap/css/bootstrap.min.css) instead of its own Bootstrap 2 copy incss/bootstrap/. - The page layout in
index.phpuses Bootstrap 5 columns:col-md-N0 → 46,.spanN57 → 11,.row-fluid25 → 8.css/template.cssgives sidebar module headings the same styling in the new.col-md-3columns (24,983 → 25,386 bytes). - Joomla’s own pages now get the Bootstrap 5 styling they are written for: the Smart Search field and its button sit on one line, and labels meant only for screen readers (
visually-hidden) are no longer printed on the page as stray tiny text. templateDetails.xmlversion16.12.2024 5.1.2/4.2.12→5.4.8. The version shown in the template description (5.4.8 (2026-08-21)) and the@versiondocblock inindex.phpmatch.method="upgrade"is kept, so an existing install updates in place.
J3 → J5 API migration
- All 176 Joomla 3 static class calls removed from
index.php,error.phpand 28 of the 59 PHP overrides:JRoute→Route,JText→Text,JHtml/JHTML→HTMLHelper,JFactory→Factory,JURI→Uri,JModuleHelper,JPluginHelper,JComponentHelperandJDocumentHTMLto their namespaced forms. These aliases exist only while the backward-compatibility plugin is on. - Calls removed per file (before → 0):
html/mod_login/default.php22;html/com_virtuemart/user/login.php19,edit_address.php6.html/com_virtuemart/cart/default_pricelist.php22,default_address.php2,default_coupon.php1.html/com_virtuemart/productdetails/default.php16,default_images.php4,default_reviews.php4,default_addtocart.php3,default_customfields.php1,default_showcategory.php1.html/com_virtuemart/virtuemart/default_products.php9,default.php1,default_categories.php1;category/default.php8,categories.php1.html/com_virtuemart/askquestion/form.php3,bs3-form.php3,mail_html_question.php2.html/mod_virtuemart_product/single.php9,default.php7;mod_virtuemart_currencies2,mod_virtuemart_manufacturer2 (JROUTE),mod_virtuemart_cart1;mod_menu2,mod_breadcrumbs1,mod_search1.
error.php:JError::raiseWarning(404, …)→new \Exception(…, 404), and itsJTextcalls →Text.html/com_virtuemart/user/login.php:JDispatcher::getInstance()->trigger('plgVmDisplayLogin', …)→Factory::getApplication()->triggerEvent(…).
Template Options screen
- 122 field type changes in
templateDetails.xml:- 85 colour settings →
type="colorpicker": the 81colorfields and four that were plaintext(e.g.cam_loaderColor,cam_loaderBgColor). - 37 legacy
class="switch"checkboxes → Joomla’s native on/off switchers (e.g.RSSON,H1TitleImgText,H2TitleImgText,cam_autoAdvance,cam_hover,cam_navigation). With the retired and new social switches, the template has 43 switchers and no legacy checkboxes (40 before).
- 85 colour settings →
- Fields 188 → 198, tabs 9 → 10. Tab names no longer end in “Settings”, and “Template Header And Footer Custom Code” is now “Header & Footer Custom Code”.
Fonts and icons
- The Google Fonts
WebFontConfigJavaScript loader (which fetchedwebfont.js) is replaced by a direct font stylesheet link withdisplay=swapand preconnect hints (WebFontConfig1 → 0). - The front end loads Font Awesome 6.5.2 (
all.min.css+v4-shims.min.css) instead of two Font Awesome 4 stylesheets (4.6.3 and 4.3.0) from the shut-down MaxCDN, so the existingfa fa-*markup keeps working.
Log-in dialog
- The header’s log-in dialog opens and closes with Bootstrap 5’s
data-bs-toggle/data-bs-target/data-bs-dismissattributes (data-bs-*inindex.php0 → 4), throughcs-bs2-modal-shim.js. Its close control is a proper close button at the top right, and the Login button has space above it. - The dead arrow beside the Log in button is gone. Tapping it submitted the form with an empty password and landed on a warning page; the three links it hid (forgotten password, forgotten username, register) are shown in the dialog.
- Joomla’s passkey sign-in icon is icon-sized, instead of filling its button as a large black shape.
Menus, background and slideshow without old jQuery plug-ins
- Drop-down menus open on hover through CSS (
nav.cssand the compatibility stylesheet) instead of the Superfish/Supersubs plug-ins and theirjQuery.browsershim. The opacity, height and speed settings on the Drop Down Menu tab configured Superfish and no longer have an effect. - Body, welcome-box and footer background images are sized with CSS
background-size: coverinstead of Backstretch. - The camera slideshow no longer loads
jquery.mobile.customized.min.js. Its previous/next arrows are 44×44 and always visible when Navigation is on, rather than only on hover, so they work on a touch screen. - jQuery itself still loads, for the camera slideshow and the side menu panel.
Desktop header
- The top bar reads as one row. The five links share an even 18 px rhythm (the two lists they come from each carried a 32 px indent, which left a wider gap in the middle), the search mark sits beside the last link instead of stranded at the half-way mark of a fixed 50/50 split, and the account, register, search and cart controls share one centre line and one size, with the cart hard right.
- The desktop search box sits in the middle of its bar.
- The VirtueMart account pages (
view=user) no longer show the promotional module positions and the slideshow above the form, so the form is the first thing on the page.
Fixed
Pages that returned a server error
- VirtueMart log-in page:
html/com_virtuemart/user/login.phpcalledJDispatcher, which was removed in Joomla 4 and has no compatibility alias. Every visitor who was not logged in got a 500 onview=user&layout=logininstead of a log-in form. - Log-in form validation: the same override called
behavior.formvalidation, which Joomla 5 removed (“behavior::formvalidation not found”). It now usesbehavior.formvalidator. A second retired call on the same page,behavior.modal, is removed. With thanks to Zoltán Szász, whose report found it. - “Page not found”:
error.phpcalledJError::raiseWarning(), which has no alias in Joomla 4 or 5, so every 404 became a server error.
Browser errors
- The slideshow’s
camera.min.jsbound its controls with jQuery’s.live(), removed in jQuery 1.9, andjquery.mobile.customized.min.jsfailed while loading under jQuery 3.7. Both threw on every page with the slideshow; the first is now supported bycs-jq-compat.jsand the second is no longer loaded. - The colour settings were plain text boxes on Joomla 5, so a colour could only be changed by typing its code. All 85 now have the colour picker.
Content
- Broken images in the sample “Extensions” categories. The descriptions of Components, Modules, Templates, Languages and Plugins pointed at
administrator/templates/bluestork/images/header/icon-48-*.png, from Joomla 2.5’s admin template, which Joomla 3 removed. The five images now ship inimages/legacy-bluestork/and the Quickstart’s descriptions point there.
Maintenance pass
- The
@font-faceincss/template.csspointing at the removedmedia/jui/fonts/IcoMoon font is disabled; it cost four failed requests on every page load. - Pagination arrows (
icon-angle-left/-right/-double-left/-double-right) render instead of empty squares. - Featured articles are no longer clipped to their headline on the front page (
.blog-featured .blog-item). - The search button sits flush against its field instead of being pushed away from it (
#search-position .btn). - The password show/hide control renders as an eye in the button’s own colour, instead of a bare dot.
- 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,modernizr.js,selectivizr-min.js, thehtml5.jsshiv from the closed Google Code site, and Google’swebfont.js. The local files remain injs/(26 → 31 files) butindex.phpno longer loads them. - Stylesheets: the template’s Bootstrap 2 (
css/bootstrap/bootstrap.min.css,bootstrap-responsive.min.css,bootstrap-extended.css), the Internet Explorer sheetsie9-10.css,ie.cssandie6.csswith their conditional comments, and both MaxCDNfont-awesome.min.csslinks.
Old colour picker
utils/js_colourchanger/(jscolor.js,arrow.gif,cross.gif,hs.png,hv.png) is removed from the template.
Retired social services
- Three social slots removed with their switches: StumbleUpon, Digg and Blogger.
- The Google Business icon is no longer shown. In the previous version its link read a misspelt setting (
gusus) and always pointed nowhere. Its two fields (gbus,gbusON) remain on the Options screen and have no effect.
Security
- Template settings written into the page are escaped or validated at 148 places in
index.php, through the new helpers:phEsc()(52, plus 8 on the generated favicon links) for HTML text and attributes and for values inside the inline<style>and scripts: every social link URL, the five custom social links and their icon classes, the Site Name and Slogan text (H1Title/H2Title, written as plain text) and images, their positions, colours and font sizes, the content font size, the drop-down column widths (dropdownhandler2–5), the slideshow minimum height, the body, welcome-box and footer background images, the theme preset name and the fixed site width.phHexColor()(95) for 78 colour settings (color1–color92) in the inline colour stylesheet. Anything that is not a hex colour falls back to a fixed colour.phCssDim()for the header height (topheight).
- Social links that open in a new tab carry
rel="noopener"(18 links). htmlspecialchars/ escape calls across the template: 37 → 43.
Quickstart Installer
The Quickstart (
ElectraShop-5.4.8-Quickstart.zip) is a complete Joomla 5.4.8 site with VirtueMart 4.8.0 and Electra Shop installed as the active template, with the demo content.- It installs through Joomla’s standard web installer, replacing the previous Akeeba Backup archive (
.jpa) and Kickstart. - Bundled extensions: Akeeba Backup 10.3.7, Weblinks 5.1.0, Search 4.0.0, MCP For J 2.6.0 and StageIt 5.7.3.
- The Behaviour – Backward Compatibility plugin is enabled, as VirtueMart requires.
- The demo’s template style has the slideshow’s previous/next arrows switched on (
cam_navigation). - The five “Extensions” sample categories show their images (see Fixed).
Package format
- Standalone template:
pkg_electrashop-5.4.8.zip, a Joomla package (pkg_electrashop.xml, new: Electra Shop had never been packaged) that installs theelectrashoptemplate extension and registers it in the package manager. It declaresmethod="upgrade", so an existing Electra Shop updates in place, and<blockChildUninstall>true</blockChildUninstall>, so the template is removed through the package rather than on its own. The previous download was the bare template zip. - Quickstart bundle:
ElectraShop-5.4.8-Quickstart.zip, a complete Joomla 5.4.8 install with VirtueMart 4.8.0 and Electra Shop pre-loaded as the active template.
Known limitations of this release: the “Register” heading on the VirtueMart account page sits above an empty area, because VirtueMart sends that form with no fields on this view; registration has its own menu entry, which the phone’s Register button links to. The print view and VirtueMart pop-up windows (component.php) still load the template’s original stylesheets. Some settings (the slideshow’s timings, effects and grid sizes) and the module titles were still written into the page without escaping; these are administrator-only settings and were escaped in 5.4.8.3 and 5.4.8.4. The slideshow is still the originalcamera.js, running on jQuery through the compatibility script.
Version numbering: from this release the first three digits of Electra Shop’s version match the Joomla release it is built for (5.4.8 = Joomla 5.4.8); a later fix on the same Joomla release adds a fourth digit (5.4.8.1). The previous download carried16.12.2024 5.1.2/4.2.12.Version 17.12.2024 5.1.2/4.2.12
- Fixed - Minor bugs
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.?
Version 01.04.2023 4.2.8
- Fixed - Template updated to Joomla 4.2