Make WordPress Themes

Changeset 356594


Ignore:
Timestamp:
11/02/2026 10:17:18 AM (7 days ago)
Author:
themedropbox
Message:

New version of Al Qamara Lite - 1.0.5

Location:
al-qamara-lite/1.0.5
Files:
23 added
1 deleted
7 edited
1 copied

Legend:

Unmodified
Added
Removed
  • al-qamara-lite/1.0.5/functions.php

    r353543 r356594  
    3838============================================================================= */
    3939
    40 define( 'ALQAMARA_VERSION', '1.0.4'                        );
     40define( 'ALQAMARA_VERSION', '1.0.5'                        );
    4141define( 'ALQAMARA_DIR',     get_template_directory()     );
    4242define( 'ALQAMARA_URI',     get_template_directory_uri() );
  • al-qamara-lite/1.0.5/inc/enqueue.php

    r353543 r356594  
    4949                /* Bootstrap 5 */
    5050                wp_enqueue_style(
    51                         'alqamara-bootstrap',
     51                        'bootstrap',
    5252                        ALQAMARA_CSS . '/bootstrap.min.css',
    5353                        array(),
    … …  
    6060                        'alqamara-local-fonts',
    6161                        ALQAMARA_FONTS . '/text-fonts/fonts.css',
    62                         array( 'alqamara-bootstrap' ),
     62                        array( 'bootstrap' ),
    6363                        ALQAMARA_VERSION
    6464                );
    … …  
    6666                /* Font Awesome */
    6767                wp_enqueue_style(
    68                         'alqamara-font-awesome',
     68                        'font-awesome',
    6969                        ALQAMARA_FONTS . '/font-awesome/all.min.css',
    7070                        array(),
    … …  
    7474                /* Bootstrap Icons */
    7575                wp_enqueue_style(
    76                         'alqamara-bootstrap-icons',
     76                        'bootstrap-icons',
    7777                        ALQAMARA_FONTS . '/bootstrap-icons/bootstrap-icons.css',
    7878                        array(),
    … …  
    8282                /* AOS — Animate On Scroll */
    8383                wp_enqueue_style(
    84                         'alqamara-aos',
     84                        'aos',
    8585                        ALQAMARA_LIB . '/aos/aos.min.css',
    8686                        array(),
    … …  
    9090                /* Swiper 11 — registered only; enqueued on demand by the Posts widget */
    9191                wp_register_style(
    92                         'alqamara-swiper',
     92                        'swiper',
    9393                        ALQAMARA_LIB . '/swiper/swiper-bundle.min.css',
    9494                        array(),
    … …  
    105105                                'alqamara-woocommerce',
    106106                                ALQAMARA_CSS . '/woocommerce.css',
    107                                 array( 'alqamara-bootstrap' ),
     107                                array( 'bootstrap' ),
    108108                                ALQAMARA_VERSION
    109109                        );
    … …  
    116116                        'alqamara-style',
    117117                        get_stylesheet_uri(),
    118                         array( 'alqamara-bootstrap' ),
     118                        array( 'bootstrap' ),
    119119                        ALQAMARA_VERSION
    120120                );
    … …  
    146146                /* Bootstrap 5 bundle (includes Popper.js); jQuery is WordPress's own copy. */
    147147                wp_enqueue_script(
    148                         'alqamara-bootstrap',
     148                        'bootstrap',
    149149                        ALQAMARA_JS . '/bootstrap.bundle.min.js',
    150150                        array( 'jquery' ),
    … …  
    155155                /* AOS — Animate On Scroll */
    156156                wp_enqueue_script(
    157                         'alqamara-aos',
     157                        'aos',
    158158                        ALQAMARA_LIB . '/aos/aos.min.js',
    159159                        array(),
    … …  
    164164                /* Swiper 11 JS — registered only; enqueued on demand by the Posts widget. */
    165165                wp_register_script(
    166                         'alqamara-swiper',
     166                        'swiper',
    167167                        ALQAMARA_LIB . '/swiper/swiper-bundle.min.js',
    168168                        array(),
    … …  
    170170                        true
    171171                );
    172                 wp_script_add_data( 'alqamara-swiper', 'strategy', 'defer' );
     172                wp_script_add_data( 'swiper', 'strategy', 'defer' );
    173173
    174174                /* Main theme JS */
    … …  
    176176                        'alqamara-main',
    177177                        ALQAMARA_JS . '/main.js',
    178                         array( 'jquery', 'alqamara-bootstrap', 'alqamara-aos' ),
     178                        array( 'jquery', 'bootstrap', 'aos' ),
    179179                        ALQAMARA_VERSION,
    180180                        true
  • al-qamara-lite/1.0.5/inc/widgets.php

    r353543 r356594  
    403403             */
    404404            if ( ! defined( 'REST_REQUEST' ) || ! REST_REQUEST ) {
    405                 wp_enqueue_style( 'alqamara-swiper' );
    406                 wp_enqueue_script( 'alqamara-swiper' );
     405                wp_enqueue_style( 'swiper' );
     406                wp_enqueue_script( 'swiper' );
    407407            }
    408408
    … …  
    11771177        if ( $enable_slider ) {
    11781178            if ( ! defined( 'REST_REQUEST' ) || ! REST_REQUEST ) {
    1179                 wp_enqueue_style( 'alqamara-swiper' );
    1180                 wp_enqueue_script( 'alqamara-swiper' );
     1179                wp_enqueue_style( 'swiper' );
     1180                wp_enqueue_script( 'swiper' );
    11811181            }
    11821182            printf(
  • al-qamara-lite/1.0.5/js/main.js

    r353543 r356594  
    372372        if ( 27 === e.keyCode ) {
    373373            closeCartDrawer();
     374        }
     375    } );
     376
     377
     378    /* =========================================================================
     379       9b. KEEP KEYBOARD FOCUS INSIDE AN OPEN PANEL (mobile menu, cart drawer)
     380       Both are modal dialogs: while one is open, Tab and Shift+Tab cycle through
     381       its own controls only, in this order: the close button first, then the
     382       rest of the panel in page order. So Tab after the last item goes to the
     383       close button, Shift+Tab on the first item after it (the logo in the
     384       mobile menu) goes to the close button, and Shift+Tab on the close button
     385       goes to the last item. Collapsed sub-menus are skipped because only
     386       visible controls count.
     387    ========================================================================= */
     388    var focusableSelector = 'a[href], button:not([disabled]), input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
     389
     390    function trapFocus( e, panel, closeButton ) {
     391        var items = $( panel ).find( focusableSelector ).filter( ':visible' ).not( closeButton ).toArray();
     392        if ( closeButton ) {
     393            items.unshift( closeButton );
     394        }
     395        if ( ! items.length ) {
     396            return;
     397        }
     398        var index = items.indexOf( document.activeElement );
     399        var next;
     400
     401        if ( e.shiftKey ) {
     402            next = index <= 0 ? items.length - 1 : index - 1;
     403        } else {
     404            next = ( index === -1 || index === items.length - 1 ) ? 0 : index + 1;
     405        }
     406        e.preventDefault();
     407        items[ next ].focus();
     408    }
     409
     410    $( document ).on( 'keydown', function( e ) {
     411        if ( 'Tab' !== e.key && 9 !== e.keyCode ) {
     412            return;
     413        }
     414        if ( $mobileMenu.hasClass( 'open' ) ) {
     415            trapFocus( e, $mobileMenu[0], document.getElementById( 'mobileMenuClose' ) );
     416        } else if ( $cartDrawer.hasClass( 'is-open' ) ) {
     417            trapFocus( e, $cartDrawer[0], $cartDrawer.find( '.alqamara-drawer-close' )[0] );
    374418        }
    375419    } );
  • al-qamara-lite/1.0.5/languages/al-qamara-lite.pot

    r353543 r356594  
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: Al Qamara Lite 1.0.4\n"
     5"Project-Id-Version: Al Qamara Lite 1.0.5\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/theme/al-qamara-lite\n"
    77"MIME-Version: 1.0\n"
  • al-qamara-lite/1.0.5/readme.txt

    r353543 r356594  
    44Tested up to: 7.1
    55Requires PHP: 7.4
    6 Stable tag: 1.0.4
     6Stable tag: 1.0.5
    77License: GPLv2 or later
    88License URI: https://www.gnu.org/licenses/gpl-2.0.html
    … …  
    7272== Resources ==
    7373
    74 * Bootstrap 5.0.2, MIT License, https://getbootstrap.com/ (css/bootstrap.min.css and js/bootstrap.bundle.min.js, the latter includes Popper.js). Copyright 2011-2021 The Bootstrap Authors and Twitter, Inc. Unminified source is included in lib/src/ (bootstrap-5.0.2.css, bootstrap-5.0.2.bundle.js); upstream: https://github.com/twbs/bootstrap/tree/v5.0.2
    75 * Font Awesome Free 7.1.0, Icons CC BY 4.0 / Fonts SIL OFL 1.1 / Code MIT License, https://fontawesome.com/ (fonts/font-awesome/ and fonts/webfonts/fa-*.woff2). Copyright 2025 Fonticons, Inc. Unminified source: lib/src/fontawesome-free-7.1.0-all.css
     74* Bootstrap 5.0.2, MIT License, https://getbootstrap.com/ (css/bootstrap.min.css and js/bootstrap.bundle.min.js, the latter includes Popper.js). Copyright 2011-2021 The Bootstrap Authors and Twitter, Inc. The unminified files sit next to the minified ones (css/bootstrap.css, js/bootstrap.bundle.js); upstream: https://github.com/twbs/bootstrap/tree/v5.0.2
     75* Font Awesome Free 7.1.0, Icons CC BY 4.0 / Fonts SIL OFL 1.1 / Code MIT License, https://fontawesome.com/ (fonts/font-awesome/ and fonts/webfonts/fa-*.woff2). Copyright 2025 Fonticons, Inc. The unminified file sits next to the minified one (fonts/font-awesome/all.css)
    7676* Bootstrap Icons 1.13.1, MIT License, https://icons.getbootstrap.com/ (fonts/bootstrap-icons/ and fonts/webfonts/bootstrap-icons.*). Copyright 2019-2024 The Bootstrap Authors; the CSS is the official, unminified file
    77 * AOS (Animate On Scroll) 2.3.4, MIT License, https://michalsnik.github.io/aos/ (lib/aos/). Copyright Michal Sajnog. The files are the official dist build (aos.js, aos.css); source: https://github.com/michalsnik/aos/tree/v2.3.4
    78 * Swiper 11.2.10, MIT License, https://swiperjs.com/ (lib/swiper/, only loaded when a slider widget is used). Copyright 2014-2025 Vladimir Kharlampidi. Unminified source is included in lib/src/ (swiper-11.2.10-bundle.js, swiper-11.2.10-bundle.css); upstream: https://github.com/nolimits4web/swiper/tree/v11.2.10
     77* AOS (Animate On Scroll) 2.3.4, MIT License, https://michalsnik.github.io/aos/ (lib/aos/). Copyright Michal Sajnog. lib/aos/aos.min.js and aos.min.css are the official dist build; the original source (JavaScript and SCSS) is included in lib/aos/src/ with the license in lib/aos/LICENSE; upstream: https://github.com/michalsnik/aos/tree/v2.3.4
     78* Swiper 11.2.10, MIT License, https://swiperjs.com/ (lib/swiper/, only loaded when a slider widget is used). Copyright 2014-2025 Vladimir Kharlampidi. The unminified files sit next to the minified ones (lib/swiper/swiper-bundle.js, lib/swiper/swiper-bundle.css); upstream: https://github.com/nolimits4web/swiper/tree/v11.2.10
    7979* Open Sans, Lora, Poppins, Playfair Display and Roboto, SIL Open Font License 1.1, https://fonts.google.com/ (self-hosted Latin-subset .woff2 files in fonts/webfonts/, declared in fonts/text-fonts/fonts.css). Copyright holders: Open Sans, The Open Sans Project Authors; Lora, The Lora Project Authors; Poppins, Indian Type Foundry; Playfair Display, The Playfair Display Project Authors; Roboto, The Roboto Project Authors.
    8080
    8181== Changelog ==
     82
     83= 1.0.5 =
     84* Keyboard: the open mobile menu and cart drawer keep focus inside them. Tab after the last item moves to the close button, Shift+Tab on the close button moves to the last item.
     85* Every bundled minified file now has its original next to it (Bootstrap, Font Awesome, Swiper), and the original AOS source is included in lib/aos/src/.
     86* Third-party scripts and styles are registered under their plain names (bootstrap, font-awesome, bootstrap-icons, aos, swiper) instead of a theme prefix.
    8287
    8388= 1.0.4 =
    … …  
    109114== Upgrade Notice ==
    110115
     116= 1.0.5 = focus stays inside the open mobile menu and cart drawer; original files included for every minified library.
     117
    111118= 1.0.4 =
    112119Large clean-up release. Features that belong in plugins (quick view, wishlist, SEO output, maintenance mode and similar) were removed, and PHP names were renamed to the "alqamara" prefix. Check your site after updating; Customizer settings that still exist are kept.
  • al-qamara-lite/1.0.5/style.css

    r353543 r356594  
    22Theme Name:         Al Qamara Lite
    33Description:        A clean, fast theme for blogs, business sites and WooCommerce stores. Built on Bootstrap 5, with a mobile slide-in menu, a widget-driven homepage, a Customizer-based header, footer and colour options, and full WooCommerce styling.
    4 Version:            1.0.4
     4Version:            1.0.5
    55Author:             Tech Al Qamara
    66Author URI:         https://profiles.wordpress.org/alqamara/
Note: See TracChangeset for help on using the changeset viewer.