Make WordPress Themes

Changeset 311639


Ignore:
Timestamp:
02/03/2026 07:15:00 AM (9 months ago)
Author:
themedropbox
Message:

New version of Hardware Tools Store - 3.3

Location:
hardware-tools-store/3.3
Files:
2 added
9 edited
1 copied

Legend:

Unmodified
Added
Removed
  • hardware-tools-store/3.3/inc/TGM/class-tgm-plugin-activation.php

    r231750 r311639  
    99 *
    1010 * @package   TGM-Plugin-Activation
    11  * @version   2.6.1 for parent theme Hardware Tools Store for publication on WordPress.org
     11 * @version   2.6.1
    1212 * @link      http://tgmpluginactivation.com/
    1313 * @author    Thomas Griffin, Gary Jones, Juliette Reinders Folmer
    … …  
    3232        Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
    3333*/
     34
     35// Exit if accessed directly.
     36if ( ! defined( 'ABSPATH' ) ) {
     37        return;
     38}
    3439
    3540if ( ! class_exists( 'TGM_Plugin_Activation' ) ) {
    … …  
    260265                        do_action_ref_array( 'tgmpa_init', array( $this ) );
    261266
    262 
     267                        /*
     268                         * Load our text domain and allow for overloading the fall-back file.
     269                         *
     270                         * {@internal IMPORTANT! If this code changes, review the regex in the custom TGMPA
     271                         * generator on the website.}}
     272                         */
     273                        add_action( 'init', array( $this, 'load_textdomain' ), 5 );
     274                        add_filter( 'load_textdomain_mofile', array( $this, 'overload_textdomain_mofile' ), 10, 2 );
    263275
    264276                        // When the rest of WP has loaded, kick-start the rest of the class.
    … …  
    283295                 */
    284296                public function __set( $name, $value ) {
     297                        // phpcs:ignore Squiz.PHP.NonExecutableCode.ReturnNotRequired -- See explanation above.
    285298                        return;
    286299                }
    … …  
    332345                                'updating'                        => __( 'Updating Plugin: %s', 'hardware-tools-store' ),
    333346                                'oops'                            => __( 'Something went wrong with the plugin API.', 'hardware-tools-store' ),
     347                                /* translators: 1: plugin name(s). */
    334348                                'notice_can_install_required'     => _n_noop(
    335                                         /* translators: 1: plugin name(s). */
    336349                                        'This theme requires the following plugin: %1$s.',
    337350                                        'This theme requires the following plugins: %1$s.',
    338351                                        'hardware-tools-store'
    339352                                ),
     353                                /* translators: 1: plugin name(s). */
    340354                                'notice_can_install_recommended'  => _n_noop(
    341                                         /* translators: 1: plugin name(s). */
    342355                                        'This theme recommends the following plugin: %1$s.',
    343356                                        'This theme recommends the following plugins: %1$s.',
    344357                                        'hardware-tools-store'
    345358                                ),
     359                                /* translators: 1: plugin name(s). */
    346360                                'notice_ask_to_update'            => _n_noop(
    347                                         /* translators: 1: plugin name(s). */
    348361                                        'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.',
    349362                                        'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.',
    350363                                        'hardware-tools-store'
    351364                                ),
     365                                /* translators: 1: plugin name(s). */
    352366                                'notice_ask_to_update_maybe'      => _n_noop(
    353                                         /* translators: 1: plugin name(s). */
    354367                                        'There is an update available for: %1$s.',
    355368                                        'There are updates available for the following plugins: %1$s.',
    356369                                        'hardware-tools-store'
    357370                                ),
     371                                /* translators: 1: plugin name(s). */
    358372                                'notice_can_activate_required'    => _n_noop(
    359                                         /* translators: 1: plugin name(s). */
    360373                                        'The following required plugin is currently inactive: %1$s.',
    361374                                        'The following required plugins are currently inactive: %1$s.',
    362375                                        'hardware-tools-store'
    363376                                ),
     377                                /* translators: 1: plugin name(s). */
    364378                                'notice_can_activate_recommended' => _n_noop(
    365                                         /* translators: 1: plugin name(s). */
    366379                                        'The following recommended plugin is currently inactive: %1$s.',
    367380                                        'The following recommended plugins are currently inactive: %1$s.',
    … …  
    445458                                add_action( 'switch_theme', array( $this, 'force_deactivation' ) );
    446459                        }
    447                 }
    448 
    449 
    450 
    451 
    452 
    453 
     460
     461                        // Add CSS for the TGMPA admin page.
     462                        add_action( 'admin_head', array( $this, 'admin_css' ) );
     463                }
     464
     465                /**
     466                 * Load translations.
     467                 *
     468                 * @since 2.6.0
     469                 *
     470                 * (@internal Uses `load_theme_textdomain()` rather than `load_plugin_textdomain()` to
     471                 * get round the different ways of handling the path and deprecated notices being thrown
     472                 * and such. For plugins, the actual file name will be corrected by a filter.}}
     473                 *
     474                 * {@internal IMPORTANT! If this function changes, review the regex in the custom TGMPA
     475                 * generator on the website.}}
     476                 */
     477                public function load_textdomain() {
     478                        if ( is_textdomain_loaded( 'hardware-tools-store' ) ) {
     479                                return;
     480                        }
     481
     482                        if ( false !== strpos( __FILE__, WP_PLUGIN_DIR ) || false !== strpos( __FILE__, WPMU_PLUGIN_DIR ) ) {
     483                                // Plugin, we'll need to adjust the file name.
     484                                add_action( 'load_textdomain_mofile', array( $this, 'correct_plugin_mofile' ), 10, 2 );
     485                                load_theme_textdomain( 'hardware-tools-store', dirname( __FILE__ ) . '/languages' );
     486                                remove_action( 'load_textdomain_mofile', array( $this, 'correct_plugin_mofile' ), 10 );
     487                        } else {
     488                                load_theme_textdomain( 'hardware-tools-store', dirname( __FILE__ ) . '/languages' );
     489                        }
     490                }
     491
     492                /**
     493                 * Correct the .mo file name for (must-use) plugins.
     494                 *
     495                 * Themese use `/path/{locale}.mo` while plugins use `/path/{text-domain}-{locale}.mo`.
     496                 *
     497                 * {@internal IMPORTANT! If this function changes, review the regex in the custom TGMPA
     498                 * generator on the website.}}
     499                 *
     500                 * @since 2.6.0
     501                 *
     502                 * @param string $mofile Full path to the target mofile.
     503                 * @param string $domain The domain for which a language file is being loaded.
     504                 * @return string $mofile
     505                 */
     506                public function correct_plugin_mofile( $mofile, $domain ) {
     507                        // Exit early if not our domain (just in case).
     508                        if ( 'hardware-tools-store' !== $domain ) {
     509                                return $mofile;
     510                        }
     511                        return preg_replace( '`/([a-z]{2}_[A-Z]{2}.mo)$`', '/tgmpa-$1', $mofile );
     512                }
     513
     514                /**
     515                 * Potentially overload the fall-back translation file for the current language.
     516                 *
     517                 * WP, by default since WP 3.7, will load a local translation first and if none
     518                 * can be found, will try and find a translation in the /wp-content/languages/ directory.
     519                 * As this library is theme/plugin agnostic, translation files for TGMPA can exist both
     520                 * in the WP_LANG_DIR /plugins/ subdirectory as well as in the /themes/ subdirectory.
     521                 *
     522                 * This method makes sure both directories are checked.
     523                 *
     524                 * {@internal IMPORTANT! If this function changes, review the regex in the custom TGMPA
     525                 * generator on the website.}}
     526                 *
     527                 * @since 2.6.0
     528                 *
     529                 * @param string $mofile Full path to the target mofile.
     530                 * @param string $domain The domain for which a language file is being loaded.
     531                 * @return string $mofile
     532                 */
     533                public function overload_textdomain_mofile( $mofile, $domain ) {
     534                        // Exit early if not our domain, not a WP_LANG_DIR load or if the file exists and is readable.
     535                        if ( 'hardware-tools-store' !== $domain || false === strpos( $mofile, WP_LANG_DIR ) || @is_readable( $mofile ) ) {
     536                                return $mofile;
     537                        }
     538
     539                        // Current fallback file is not valid, let's try the alternative option.
     540                        if ( false !== strpos( $mofile, '/themes/' ) ) {
     541                                return str_replace( '/themes/', '/plugins/', $mofile );
     542                        } elseif ( false !== strpos( $mofile, '/plugins/' ) ) {
     543                                return str_replace( '/plugins/', '/themes/', $mofile );
     544                        } else {
     545                                return $mofile;
     546                        }
     547                }
    454548
    455549                /**
    … …  
    562656
    563657                                global $tab, $body_id;
     658                                // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound -- WP requirement.
    564659                                $body_id = 'plugin-information';
    565                                 // @codingStandardsIgnoreStart
    566                                 $tab     = 'plugin-information';
    567                                 // @codingStandardsIgnoreEnd
     660
     661                                // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited -- Overriding the WP global is the point.
     662                                $tab = 'plugin-information';
    568663
    569664                                install_plugin_information();
    … …  
    637732                 */
    638733                protected function add_admin_menu( array $args ) {
    639                         $this->page_hook = add_theme_page( $args['page_title'], $args['menu_title'], $args['capability'], $args['menu_slug'], $args['function'] );
     734                        if ( has_filter( 'tgmpa_admin_menu_use_add_theme_page' ) ) {
     735                                _deprecated_function( 'The "tgmpa_admin_menu_use_add_theme_page" filter', '2.5.0', esc_html__( 'Set the parent_slug config variable instead.', 'hardware-tools-store' ) );
     736                        }
     737
     738                        if ( 'themes.php' === $this->parent_slug ) {
     739                                $this->page_hook = call_user_func( 'add_theme_page', $args['page_title'], $args['menu_title'], $args['capability'], $args['menu_slug'], $args['function'] );
     740                        } else {
     741                                $this->page_hook = call_user_func( 'add_submenu_page', $args['parent_slug'], $args['page_title'], $args['menu_title'], $args['capability'], $args['menu_slug'], $args['function'] );
     742                        }
    640743                }
    641744
    … …  
    653756                public function install_plugins_page() {
    654757                        // Store new instance of plugin table in object.
    655                         $plugin_table = new TGMPA_List_Table;
     758                        $plugin_table = new TGMPA_List_Table();
    656759
    657760                        // Return early if processing a plugin installation action.
    … …  
    741844                                $method = ''; // Leave blank so WP_Filesystem can populate it as necessary.
    742845
    743                                 if ( false === ( $creds = request_filesystem_credentials( esc_url_raw( $url ), $method, false, false, array() ) ) ) {
     846                                $creds = request_filesystem_credentials( esc_url_raw( $url ), $method, false, false, array() );
     847                                if ( false === $creds ) {
    744848                                        return true;
    745849                                }
    … …  
    798902                                if ( 'update' === $install_type ) {
    799903                                        // Inject our info into the update transient.
    800                                         $to_inject                    = array( $slug => $this->plugins[ $slug ] );
     904                                        $to_inject                    = array(
     905                                                $slug => $this->plugins[ $slug ],
     906                                        );
    801907                                        $to_inject[ $slug ]['source'] = $source;
    802908                                        $this->inject_update_info( $to_inject );
    … …  
    825931                                // Display message based on if all plugins are now active or not.
    826932                                if ( $this->is_tgmpa_complete() ) {
    827                                         echo '<p>', sprintf( esc_html( $this->strings['complete'] ), '<a href="' . esc_url( self_admin_url() ) . '">' . esc_html__( 'Return to the Dashboard', 'hardware-tools-store' ) . '</a>' ), '</p>';
     933                                        echo '<p>', sprintf( esc_html( $this->strings['complete'] ), '<a href="' . esc_url( self_admin_url() ) . '">' . esc_html( $this->strings['dashboard'] ) . '</a>' ), '</p>';
    828934                                        echo '<style type="text/css">#adminmenu .wp-submenu li.current { display: none !important; }</style>';
    829935                                } else {
    … …  
    855961
    856962                        if ( ! is_object( $repo_updates ) ) {
    857                                 $repo_updates = new stdClass;
     963                                $repo_updates = new stdClass();
    858964                        }
    859965
    … …  
    862968
    863969                                if ( empty( $repo_updates->response[ $file_path ] ) ) {
    864                                         $repo_updates->response[ $file_path ] = new stdClass;
     970                                        $repo_updates->response[ $file_path ] = new stdClass();
    865971                                }
    866972
    … …  
    9321038                                                return trailingslashit( $to_path );
    9331039                                        } else {
    934                                                 return new WP_Error( 'rename_failed', esc_html__( 'The remote plugin package does not contain a folder with the desired slug and renaming did not work.', 'hardware-tools-store' ) . ' ' . esc_html__( 'Please contact the plugin provider and ask them to package their plugin according to the WordPress guidelines.', 'hardware-tools-store' ), array( 'found' => $subdir_name, 'expected' => $desired_slug ) );
     1040                                                return new WP_Error(
     1041                                                        'rename_failed',
     1042                                                        esc_html__( 'The remote plugin package does not contain a folder with the desired slug and renaming did not work.', 'hardware-tools-store' ) . ' ' . esc_html__( 'Please contact the plugin provider and ask them to package their plugin according to the WordPress guidelines.', 'hardware-tools-store' ),
     1043                                                        array(
     1044                                                                'found'    => $subdir_name,
     1045                                                                'expected' => $desired_slug,
     1046                                                        )
     1047                                                );
    9351048                                        }
    9361049                                } elseif ( empty( $subdir_name ) ) {
    937                                         return new WP_Error( 'packaged_wrong', esc_html__( 'The remote plugin package consists of more than one file, but the files are not packaged in a folder.', 'hardware-tools-store' ) . ' ' . esc_html__( 'Please contact the plugin provider and ask them to package their plugin according to the WordPress guidelines.', 'hardware-tools-store' ), array( 'found' => $subdir_name, 'expected' => $desired_slug ) );
     1050                                        return new WP_Error(
     1051                                                'packaged_wrong',
     1052                                                esc_html__( 'The remote plugin package consists of more than one file, but the files are not packaged in a folder.', 'hardware-tools-store' ) . ' ' . esc_html__( 'Please contact the plugin provider and ask them to package their plugin according to the WordPress guidelines.', 'hardware-tools-store' ),
     1053                                                array(
     1054                                                        'found'    => $subdir_name,
     1055                                                        'expected' => $desired_slug,
     1056                                                )
     1057                                        );
    9381058                                }
    9391059                        }
    … …  
    9661086                                                // Make sure message doesn't display again if bulk activation is performed
    9671087                                                // immediately after a single activation.
    968                                                 if ( ! isset( $_POST['action'] ) ) { // WPCS: CSRF OK.
     1088                                                // phpcs:ignore WordPress.Security.NonceVerification.Missing -- Not using the superglobal.
     1089                                                if ( ! isset( $_POST['action'] ) ) {
    9691090                                                        echo '<div id="message" class="updated"><p>', esc_html( $this->strings['activated_successfully'] ), ' <strong>', esc_html( $this->plugins[ $slug ]['name'] ), '.</strong></p></div>';
    9701091                                                }
    … …  
    9871108                                        // Make sure message doesn't display again if bulk activation is performed
    9881109                                        // immediately after a single activation.
    989                                         if ( ! isset( $_POST['action'] ) ) { // WPCS: CSRF OK.
     1110                                        // phpcs:ignore WordPress.Security.NonceVerification.Missing -- Not using the superglobal.
     1111                                        if ( ! isset( $_POST['action'] ) ) {
    9901112                                                echo '<div id="message" class="error"><p>',
    9911113                                                        sprintf(
    … …  
    11371259
    11381260                                // Register the nag messages and prepare them to be processed.
    1139                                 add_settings_error( 'tgmpa', 'tgmpa', $rendered, $this->get_admin_notice_class() );
     1261                                add_settings_error( 'hardware-tools-store', 'hardware-tools-store', $rendered, $this->get_admin_notice_class() );
    11401262                        }
    11411263
    … …  
    12371359                        global $wp_settings_errors;
    12381360
    1239                         settings_errors( 'tgmpa' );
     1361                        settings_errors( 'hardware-tools-store' );
    12401362
    12411363                        foreach ( (array) $wp_settings_errors as $key => $details ) {
    1242                                 if ( 'tgmpa' === $details['setting'] ) {
     1364                                if ( 'hardware-tools-store' === $details['setting'] ) {
    12431365                                        unset( $wp_settings_errors[ $key ] );
    12441366                                        break;
    … …  
    12821404
    12831405                        $defaults = array(
    1284                                 'name'               => '',      // String
    1285                                 'slug'               => '',      // String
    1286                                 'source'             => 'repo',  // String
    1287                                 'required'           => false,   // Boolean
    1288                                 'version'            => '',      // String
    1289                                 'force_activation'   => false,   // Boolean
    1290                                 'force_deactivation' => false,   // Boolean
    1291                                 'external_url'       => '',      // String
    1292                                 'is_callable'        => '',      // String|Array.
     1406                                'name'               => '',      // String.
     1407                                'slug'               => '',      // String.
     1408                                'source'             => 'repo',  // String.
     1409                                'required'           => false,   // Boolean.
     1410                                'version'            => '',      // String.
     1411                                'force_activation'   => false,   // Boolean.
     1412                                'force_deactivation' => false,   // Boolean.
     1413                                'external_url'       => '',      // String.
     1414                                'is_callable'        => '',      // String or array.
    12931415                        );
    12941416
    … …  
    15561678                                }
    15571679
    1558                                 $response = plugins_api( 'plugin_information', array( 'slug' => $slug, 'fields' => array( 'sections' => false ) ) );
     1680                                $response = plugins_api(
     1681                                        'plugin_information',
     1682                                        array(
     1683                                                'slug'   => $slug,
     1684                                                'fields' => array(
     1685                                                        'sections' => false,
     1686                                                ),
     1687                                        )
     1688                                );
    15591689
    15601690                                $api[ $slug ] = false;
    … …  
    16391769                                // Core update screen.
    16401770                                return true;
    1641                         } elseif ( 'plugins' === $screen->base && ! empty( $_POST['action'] ) ) { // WPCS: CSRF ok.
     1771                        } elseif ( 'plugins' === $screen->base && ! empty( $_POST['action'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
    16421772                                // Plugins bulk update screen.
    16431773                                return true;
    1644                         } elseif ( 'update' === $screen->base && ! empty( $_POST['action'] ) ) { // WPCS: CSRF ok.
     1774                        } elseif ( 'update' === $screen->base && ! empty( $_POST['action'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
    16451775                                // Individual updates (ajax call).
    16461776                                return true;
    … …  
    19852115                                ),
    19862116                                '</small></strong></p>';
     2117                }
     2118
     2119                /**
     2120                 * Adds CSS to admin head.
     2121                 *
     2122                 * @since 2.6.2
     2123                 */
     2124                public function admin_css() {
     2125                        if ( ! $this->is_tgmpa_page() ) {
     2126                                return;
     2127                        }
     2128
     2129                        echo '
     2130                        <style>
     2131                        #tgmpa-plugins .tgmpa-type-required > th {
     2132                                border-left: 3px solid #dc3232;
     2133                        }
     2134                        </style>';
    19872135                }
    19882136
    … …  
    25312679                 */
    25322680                public function no_items() {
    2533                         echo esc_html__( 'No plugins to install, update or activate.', 'hardware-tools-store' ) . ' <a href="' . esc_url( self_admin_url() ) . '"> ' . esc_html__( 'Return to the Dashboard', 'hardware-tools-store' ) . '</a>';
     2681                        echo esc_html__( 'No plugins to install, update or activate.', 'hardware-tools-store' ) . ' <a href="' . esc_url( self_admin_url() ) . '"> ' . esc_html( $this->tgmpa->strings['dashboard'] ) . '</a>';
    25342682                        echo '<style type="text/css">#adminmenu .wp-submenu li.current { display: none !important; }</style>';
    25352683                }
    … …  
    26492797                 */
    26502798                public function single_row( $item ) {
    2651                         parent::single_row( $item );
     2799                        echo '<tr class="' . esc_attr( 'tgmpa-type-' . strtolower( $item['type'] ) ) . '">';
     2800                        $this->single_row_columns( $item );
     2801                        echo '</tr>';
    26522802
    26532803                        /**
    … …  
    26942844                 * @since 2.5.0
    26952845                 *
    2696                  * @param string $which 'top' or 'bottom' table navigation.
     2846                 * @param string $which Either 'top' or 'bottom' table navigation.
    26972847                 */
    26982848                public function extra_tablenav( $which ) {
    … …  
    28202970                                $fields = array_keys( $_POST ); // Extra fields to pass to WP_Filesystem.
    28212971
    2822                                 if ( false === ( $creds = request_filesystem_credentials( esc_url_raw( $url ), $method, false, false, $fields ) ) ) {
     2972                                $creds = request_filesystem_credentials( esc_url_raw( $url ), $method, false, false, $fields );
     2973                                if ( false === $creds ) {
    28232974                                        return true; // Stop the normal page form from displaying, credential request form will be shown.
    28242975                                }
    … …  
    29483099                                        $imploded     = empty( $plugin_names ) ? $last_plugin : ( implode( ', ', $plugin_names ) . ' ' . esc_html_x( 'and', 'plugin A *and* plugin B', 'hardware-tools-store' ) . ' ' . $last_plugin );
    29493100
    2950                                         printf( // WPCS: xss ok.
     3101                                        printf(
    29513102                                                '<div id="message" class="updated"><p>%1$s %2$s.</p></div>',
    29523103                                                esc_html( _n( 'The following plugin was activated successfully:', 'The following plugins were activated successfully:', $count, 'hardware-tools-store' ) ),
     3104                                                // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Pre-escaped via wrap_in_strong() method above.
    29533105                                                $imploded
    29543106                                        );
    … …  
    32953447                                                                break;
    32963448                                                        }
    3297                                                 } //end foreach $plugins
     3449                                                }
    32983450
    32993451                                                $this->maintenance_mode( false );
    … …  
    33153467                                                 * }
    33163468                                                 */
    3317                                                 do_action( 'upgrader_process_complete', $this, array(
    3318                                                         'action'  => 'install', // [TGMPA + ] adjusted.
    3319                                                         'type'    => 'plugin',
    3320                                                         'bulk'    => true,
    3321                                                         'plugins' => $plugins,
    3322                                                 ) );
     3469                                                do_action(
     3470                                                        // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound -- Using WP core hook.
     3471                                                        'upgrader_process_complete',
     3472                                                        $this,
     3473                                                        array(
     3474                                                                'action'  => 'install', // [TGMPA + ] adjusted.
     3475                                                                'type'    => 'plugin',
     3476                                                                'bulk'    => true,
     3477                                                                'plugins' => $plugins,
     3478                                                        )
     3479                                                );
    33233480
    33243481                                                $this->skin->bulk_footer();
    … …  
    35073664                                                                $this->upgrader->strings['skin_upgrade_start'] = __( 'The installation and activation process is starting. This process may take a while on some hosts, so please be patient.', 'hardware-tools-store' );
    35083665                                                                /* translators: 1: plugin name. */
    3509                                                                 $this->upgrader->strings['skin_update_successful'] = __( '%1$s installed and activated successfully.', 'hardware-tools-store' ) . ' <a href="#" class="hide-if-no-js" onclick="%2$s"><span>' . esc_html__( 'Show Details', 'hardware-tools-store' ) . '</span><span class="hidden">' . esc_html__( 'Hide Details', 'hardware-tools-store' ) . '</span>.</a>';
     3666                                                                $this->upgrader->strings['skin_update_successful'] = __( '%1$s installed and activated successfully.', 'hardware-tools-store' );
    35103667                                                                $this->upgrader->strings['skin_upgrade_end']       = __( 'All installations and activations have been completed.', 'hardware-tools-store' );
    35113668                                                                /* translators: 1: plugin name, 2: action number 3: total number of actions. */
    … …  
    35153672                                                                $this->upgrader->strings['skin_upgrade_start'] = __( 'The installation process is starting. This process may take a while on some hosts, so please be patient.', 'hardware-tools-store' );
    35163673                                                                /* translators: 1: plugin name. */
    3517                                                                 $this->upgrader->strings['skin_update_successful'] = esc_html__( '%1$s installed successfully.', 'hardware-tools-store' ) . ' <a href="#" class="hide-if-no-js" onclick="%2$s"><span>' . esc_html__( 'Show Details', 'hardware-tools-store' ) . '</span><span class="hidden">' . esc_html__( 'Hide Details', 'hardware-tools-store' ) . '</span>.</a>';
     3674                                                                $this->upgrader->strings['skin_update_successful'] = __( '%1$s installed successfully.', 'hardware-tools-store' );
    35183675                                                                $this->upgrader->strings['skin_upgrade_end']       = __( 'All installations have been completed.', 'hardware-tools-store' );
    35193676                                                                /* translators: 1: plugin name, 2: action number 3: total number of actions. */
    35203677                                                                $this->upgrader->strings['skin_before_update_header'] = __( 'Installing Plugin %1$s (%2$d/%3$d)', 'hardware-tools-store' );
     3678                                                        }
     3679
     3680                                                        // Add "read more" link only for WP < 4.8.
     3681                                                        if ( version_compare( $this->tgmpa->wp_version, '4.8', '<' ) ) {
     3682                                                                $this->upgrader->strings['skin_update_successful'] .= ' <a href="#" class="hide-if-no-js" onclick="%2$s"><span>' . esc_html__( 'Show Details', 'hardware-tools-store' ) . '</span><span class="hidden">' . esc_html__( 'Hide Details', 'hardware-tools-store' ) . '</span>.</a>';
    35213683                                                        }
    35223684                                                }
    … …  
    35783740                                                        $update_actions['dashboard'] = sprintf(
    35793741                                                                esc_html( $this->tgmpa->strings['complete'] ),
    3580                                                                 '<a href="' . esc_url( self_admin_url() ) . '">' . esc_html__( 'Return to the Dashboard', 'hardware-tools-store' ) . '</a>'
     3742                                                                '<a href="' . esc_url( self_admin_url() ) . '">' . esc_html( $this->tgmpa->strings['dashboard'] ) . '</a>'
    35813743                                                        );
    35823744                                                } else {
    … …  
    37213883                 */
    37223884                protected static function emulate_filter_bool( $value ) {
    3723                         // @codingStandardsIgnoreStart
     3885                        // phpcs:disable WordPress.Arrays.ArrayDeclarationSpacing.ArrayItemNoNewLine
    37243886                        static $true  = array(
    37253887                                '1',
    … …  
    37363898                                'off', 'Off', 'OFF',
    37373899                        );
    3738                         // @codingStandardsIgnoreEnd
     3900                        // phpcs:enable
    37393901
    37403902                        if ( is_bool( $value ) ) {
    … …  
    37583920                }
    37593921        } // End of class TGMPA_Utils
    3760 } // End of class_exists wrapper
     3922}
  • hardware-tools-store/3.3/inc/dashboard/dashboard.css

    r271108 r311639  
    243243    }
    244244}
     245
     246@media (min-width: 768px) and (max-width: 1199px) {
     247    .ova-elems-main-head {
     248        font-size: 20px !important;
     249        line-height: 1.2 !important;
     250    }
     251    .ova-elems-sub-head {
     252        font-size: 20px !important;
     253        line-height: 1.2 !important;
     254    }
     255    .ova-elems-notice-banner-wrap {
     256        grid-template-columns: 126px 2fr 1fr 1fr !important;
     257    }
     258    .ova-elems-buy-btn {
     259        padding: 10px !important;
     260    }
     261}
     262
     263/* Mobile devices */
     264@media (min-width: 320px) and (max-width: 767px) {
     265    .ova-elems-notice-banner-wrap {
     266        grid-template-columns: 1fr !important;
     267    }
     268    .leftbox p {
     269        word-break: break-word !important;
     270    }
     271    .ova-elems-main-head {
     272        font-size: 35px !important;
     273        text-align: center !important;
     274    }
     275    .ova-elems-sub-head {
     276        font-size: 24px !important;
     277        text-align: center !important;
     278    }
     279    .notice-right-img {
     280        display: block;
     281        margin: 0 auto;
     282    }
     283}
  • hardware-tools-store/3.3/inc/dashboard/dashboard.php

    r299091 r311639  
    8484                                                <a class="button-primary docs" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_PRO_DOC ); ?>" target="_blank"><?php esc_html_e('Documentation', 'hardware-tools-store'); ?></a>
    8585                                        </div>
    86                                                 <a class="button-primary bundle-btn" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_BUNDLE_LINK ); ?>" target="_blank"><?php esc_html_e('WordPress Theme Bundle (125+ Themes at Just $99)', 'hardware-tools-store'); ?></a>
     86                                                <a class="button-primary bundle-btn" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_BUNDLE_LINK ); ?>" target="_blank"><?php esc_html_e('WordPress Theme Bundle (125+ Themes at Just $89)', 'hardware-tools-store'); ?></a>
    8787                                </div>
    8888                                <ul style="padding-top:10px">
  • hardware-tools-store/3.3/inc/dashboard/welcome-notice.php

    r271108 r311639  
    254254                    <div class="notice-buttons-box">
    255255                        <a class="button-primary livedemo" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_LIVE_DEMO ); ?>" target="_blank"><?php esc_html_e('Live Demo', 'hardware-tools-store'); ?></a>
    256                         <a class="button-primary buynow" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_BUY_PRO ); ?>" target="_blank"><?php esc_html_e('Buy Now', 'hardware-tools-store'); ?></a>
    257                         <a class="button-primary theme-install" id="install-activate-button" href="#"><?php _e('Begin Installation', 'hardware-tools-store'); ?></a>`
     256                        <a class="button-primary buynow" href="<?php echo esc_url( HARDWARE_TOOLS_STORE_BUY_PRO ); ?>" target="_blank"><?php esc_html_e('Get Pro Theme', 'hardware-tools-store'); ?></a>
     257                        <a class="button-primary theme-install" id="install-activate-button" href="#"><?php _e('Begin Installation', 'hardware-tools-store'); ?></a>
    258258                    </div>
    259259                </div>
  • hardware-tools-store/3.3/languages/hardware-tools-store.pot

    r301859 r311639  
    1 # Copyright (C) 2025 pewilliams
     1# Copyright (C) 2026 pewilliams
    22# This file is distributed under the GNU General Public License.
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: Hardware Tools Store 2.1\n"
     5"Project-Id-Version: Hardware Tools Store 3.3\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/theme/hardware-tools-store\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
    … …  
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2025-06-14T12:38:10+00:00\n"
     12"POT-Creation-Date: 2026-01-22T18:09:25+05:30\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    14 "X-Generator: WP-CLI 2.12.0\n"
     14"X-Generator: WP-CLI 2.11.0\n"
    1515"X-Domain: hardware-tools-store\n"
    1616
    … …  
    226226
    227227#: inc/dashboard/dashboard.php:83
    228 #: inc/dashboard/welcome-notice.php:256
    229228msgid "Buy Now"
    230229msgstr ""
    231230
    232231#: inc/dashboard/dashboard.php:86
    233 msgid "WordPress Theme Bundle (125+ Themes at Just $99)"
     232msgid "WordPress Theme Bundle (125+ Themes at Just $89)"
    234233msgstr ""
    235234
    … …  
    268267msgstr ""
    269268
    270 #: inc/TGM/class-tgm-plugin-activation.php:327
     269#: inc/dashboard/welcome-notice.php:256
     270msgid "Get Pro Theme"
     271msgstr ""
     272
     273#: inc/TGM/class-tgm-plugin-activation.php:340
    271274msgid "Install Required Plugins"
    272275msgstr ""
    273276
    274 #: inc/TGM/class-tgm-plugin-activation.php:328
     277#: inc/TGM/class-tgm-plugin-activation.php:341
    275278msgid "Install Plugins"
    276279msgstr ""
    277280
    278281#. translators: %s: plugin name.
    279 #: inc/TGM/class-tgm-plugin-activation.php:330
    280 #, php-format
     282#: inc/TGM/class-tgm-plugin-activation.php:343
    281283msgid "Installing Plugin: %s"
    282284msgstr ""
    283285
    284286#. translators: %s: plugin name.
    285 #: inc/TGM/class-tgm-plugin-activation.php:332
    286 #, php-format
     287#: inc/TGM/class-tgm-plugin-activation.php:345
    287288msgid "Updating Plugin: %s"
    288289msgstr ""
    289290
    290 #: inc/TGM/class-tgm-plugin-activation.php:333
     291#: inc/TGM/class-tgm-plugin-activation.php:346
    291292msgid "Something went wrong with the plugin API."
    292293msgstr ""
    293294
    294295#. translators: 1: plugin name(s).
    295 #: inc/TGM/class-tgm-plugin-activation.php:334
    296 #, php-format
     296#: inc/TGM/class-tgm-plugin-activation.php:348
    297297msgid "This theme requires the following plugin: %1$s."
    298298msgid_plural "This theme requires the following plugins: %1$s."
    … …  
    301301
    302302#. translators: 1: plugin name(s).
    303 #: inc/TGM/class-tgm-plugin-activation.php:340
    304 #, php-format
     303#: inc/TGM/class-tgm-plugin-activation.php:354
    305304msgid "This theme recommends the following plugin: %1$s."
    306305msgid_plural "This theme recommends the following plugins: %1$s."
    … …  
    309308
    310309#. translators: 1: plugin name(s).
    311 #: inc/TGM/class-tgm-plugin-activation.php:346
    312 #, php-format
     310#: inc/TGM/class-tgm-plugin-activation.php:360
    313311msgid "The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s."
    314312msgid_plural "The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s."
    … …  
    317315
    318316#. translators: 1: plugin name(s).
    319 #: inc/TGM/class-tgm-plugin-activation.php:352
    320 #, php-format
     317#: inc/TGM/class-tgm-plugin-activation.php:366
    321318msgid "There is an update available for: %1$s."
    322319msgid_plural "There are updates available for the following plugins: %1$s."
    … …  
    325322
    326323#. translators: 1: plugin name(s).
    327 #: inc/TGM/class-tgm-plugin-activation.php:358
    328 #, php-format
     324#: inc/TGM/class-tgm-plugin-activation.php:372
    329325msgid "The following required plugin is currently inactive: %1$s."
    330326msgid_plural "The following required plugins are currently inactive: %1$s."
    … …  
    333329
    334330#. translators: 1: plugin name(s).
    335 #: inc/TGM/class-tgm-plugin-activation.php:364
    336 #, php-format
     331#: inc/TGM/class-tgm-plugin-activation.php:378
    337332msgid "The following recommended plugin is currently inactive: %1$s."
    338333msgid_plural "The following recommended plugins are currently inactive: %1$s."
    … …  
    340335msgstr[1] ""
    341336
    342 #: inc/TGM/class-tgm-plugin-activation.php:370
     337#: inc/TGM/class-tgm-plugin-activation.php:383
    343338msgid "Begin installing plugin"
    344339msgid_plural "Begin installing plugins"
    … …  
    346341msgstr[1] ""
    347342
    348 #: inc/TGM/class-tgm-plugin-activation.php:375
     343#: inc/TGM/class-tgm-plugin-activation.php:388
    349344msgid "Begin updating plugin"
    350345msgid_plural "Begin updating plugins"
    … …  
    352347msgstr[1] ""
    353348
    354 #: inc/TGM/class-tgm-plugin-activation.php:380
     349#: inc/TGM/class-tgm-plugin-activation.php:393
    355350msgid "Begin activating plugin"
    356351msgid_plural "Begin activating plugins"
    … …  
    358353msgstr[1] ""
    359354
    360 #: inc/TGM/class-tgm-plugin-activation.php:385
     355#: inc/TGM/class-tgm-plugin-activation.php:398
    361356msgid "Return to Required Plugins Installer"
    362357msgstr ""
    363358
    364 #: inc/TGM/class-tgm-plugin-activation.php:386
    365 #: inc/TGM/class-tgm-plugin-activation.php:827
    366 #: inc/TGM/class-tgm-plugin-activation.php:2533
    367 #: inc/TGM/class-tgm-plugin-activation.php:3580
     359#: inc/TGM/class-tgm-plugin-activation.php:399
    368360msgid "Return to the Dashboard"
    369361msgstr ""
    370362
    371 #: inc/TGM/class-tgm-plugin-activation.php:387
    372 #: inc/TGM/class-tgm-plugin-activation.php:3159
     363#: inc/TGM/class-tgm-plugin-activation.php:400
     364#: inc/TGM/class-tgm-plugin-activation.php:3311
    373365msgid "Plugin activated successfully."
    374366msgstr ""
    375367
    376 #: inc/TGM/class-tgm-plugin-activation.php:388
    377 #: inc/TGM/class-tgm-plugin-activation.php:2952
     368#: inc/TGM/class-tgm-plugin-activation.php:401
     369#: inc/TGM/class-tgm-plugin-activation.php:3103
    378370msgid "The following plugin was activated successfully:"
    379371msgid_plural "The following plugins were activated successfully:"
    … …  
    382374
    383375#. translators: 1: plugin name.
    384 #: inc/TGM/class-tgm-plugin-activation.php:390
    385 #, php-format
     376#: inc/TGM/class-tgm-plugin-activation.php:403
    386377msgid "No action taken. Plugin %1$s was already active."
    387378msgstr ""
    388379
    389380#. translators: 1: plugin name.
    390 #: inc/TGM/class-tgm-plugin-activation.php:392
    391 #, php-format
     381#: inc/TGM/class-tgm-plugin-activation.php:405
    392382msgid "Plugin not activated. A higher version of %s is needed for this theme. Please update the plugin."
    393383msgstr ""
    394384
    395385#. translators: 1: dashboard link.
    396 #: inc/TGM/class-tgm-plugin-activation.php:394
    397 #, php-format
     386#: inc/TGM/class-tgm-plugin-activation.php:407
    398387msgid "All plugins installed and activated successfully. %1$s"
    399388msgstr ""
    400389
    401 #: inc/TGM/class-tgm-plugin-activation.php:395
     390#: inc/TGM/class-tgm-plugin-activation.php:408
    402391msgid "Dismiss this notice"
    403392msgstr ""
    404393
    405 #: inc/TGM/class-tgm-plugin-activation.php:396
     394#: inc/TGM/class-tgm-plugin-activation.php:409
    406395msgid "There are one or more required or recommended plugins to install, update or activate."
    407396msgstr ""
    408397
    409 #: inc/TGM/class-tgm-plugin-activation.php:397
     398#: inc/TGM/class-tgm-plugin-activation.php:410
    410399msgid "Please contact the administrator of this site for help."
    411400msgstr ""
    412401
    413 #: inc/TGM/class-tgm-plugin-activation.php:522
     402#: inc/TGM/class-tgm-plugin-activation.php:616
    414403msgid "This plugin needs to be updated to be compatible with your theme."
    415404msgstr ""
    416405
    417 #: inc/TGM/class-tgm-plugin-activation.php:523
     406#: inc/TGM/class-tgm-plugin-activation.php:617
    418407msgid "Update Required"
    419408msgstr ""
    420409
    421 #: inc/TGM/class-tgm-plugin-activation.php:934
     410#: inc/TGM/class-tgm-plugin-activation.php:735
     411msgid "Set the parent_slug config variable instead."
     412msgstr ""
     413
     414#: inc/TGM/class-tgm-plugin-activation.php:1042
    422415msgid "The remote plugin package does not contain a folder with the desired slug and renaming did not work."
    423416msgstr ""
    424417
    425 #: inc/TGM/class-tgm-plugin-activation.php:934
    426 #: inc/TGM/class-tgm-plugin-activation.php:937
     418#: inc/TGM/class-tgm-plugin-activation.php:1042
     419#: inc/TGM/class-tgm-plugin-activation.php:1052
    427420msgid "Please contact the plugin provider and ask them to package their plugin according to the WordPress guidelines."
    428421msgstr ""
    429422
    430 #: inc/TGM/class-tgm-plugin-activation.php:937
     423#: inc/TGM/class-tgm-plugin-activation.php:1052
    431424msgid "The remote plugin package consists of more than one file, but the files are not packaged in a folder."
    432425msgstr ""
    433426
    434 #: inc/TGM/class-tgm-plugin-activation.php:1121
    435 #: inc/TGM/class-tgm-plugin-activation.php:2948
     427#: inc/TGM/class-tgm-plugin-activation.php:1243
     428#: inc/TGM/class-tgm-plugin-activation.php:3099
    436429msgctxt "plugin A *and* plugin B"
    437430msgid "and"
    … …  
    439432
    440433#. translators: %s: version number
    441 #: inc/TGM/class-tgm-plugin-activation.php:1982
    442 #, php-format
     434#: inc/TGM/class-tgm-plugin-activation.php:2112
    443435msgid "TGMPA v%s"
    444436msgstr ""
    445437
    446 #: inc/TGM/class-tgm-plugin-activation.php:2273
     438#: inc/TGM/class-tgm-plugin-activation.php:2421
    447439msgid "Required"
    448440msgstr ""
    449441
    450 #: inc/TGM/class-tgm-plugin-activation.php:2276
     442#: inc/TGM/class-tgm-plugin-activation.php:2424
    451443msgid "Recommended"
    452444msgstr ""
    453445
    454 #: inc/TGM/class-tgm-plugin-activation.php:2292
     446#: inc/TGM/class-tgm-plugin-activation.php:2440
    455447msgid "WordPress Repository"
    456448msgstr ""
    457449
    458 #: inc/TGM/class-tgm-plugin-activation.php:2295
     450#: inc/TGM/class-tgm-plugin-activation.php:2443
    459451msgid "External Source"
    460452msgstr ""
    461453
    462 #: inc/TGM/class-tgm-plugin-activation.php:2298
     454#: inc/TGM/class-tgm-plugin-activation.php:2446
    463455msgid "Pre-Packaged"
    464456msgstr ""
    465457
    466 #: inc/TGM/class-tgm-plugin-activation.php:2315
     458#: inc/TGM/class-tgm-plugin-activation.php:2463
    467459msgid "Not Installed"
    468460msgstr ""
    469461
    470 #: inc/TGM/class-tgm-plugin-activation.php:2319
     462#: inc/TGM/class-tgm-plugin-activation.php:2467
    471463msgid "Installed But Not Activated"
    472464msgstr ""
    473465
    474 #: inc/TGM/class-tgm-plugin-activation.php:2321
     466#: inc/TGM/class-tgm-plugin-activation.php:2469
    475467msgid "Active"
    476468msgstr ""
    477469
    478 #: inc/TGM/class-tgm-plugin-activation.php:2327
     470#: inc/TGM/class-tgm-plugin-activation.php:2475
    479471msgid "Required Update not Available"
    480472msgstr ""
    481473
    482 #: inc/TGM/class-tgm-plugin-activation.php:2330
     474#: inc/TGM/class-tgm-plugin-activation.php:2478
    483475msgid "Requires Update"
    484476msgstr ""
    485477
    486 #: inc/TGM/class-tgm-plugin-activation.php:2333
     478#: inc/TGM/class-tgm-plugin-activation.php:2481
    487479msgid "Update recommended"
    488480msgstr ""
    489481
    490482#. translators: 1: install status, 2: update status
    491 #: inc/TGM/class-tgm-plugin-activation.php:2342
    492 #, php-format
     483#: inc/TGM/class-tgm-plugin-activation.php:2490
    493484msgctxt "Install/Update Status"
    494485msgid "%1$s, %2$s"
    … …  
    496487
    497488#. translators: 1: number of plugins.
    498 #: inc/TGM/class-tgm-plugin-activation.php:2388
    499 #, php-format
     489#: inc/TGM/class-tgm-plugin-activation.php:2536
    500490msgctxt "plugins"
    501491msgid "All <span class=\"count\">(%s)</span>"
    … …  
    505495
    506496#. translators: 1: number of plugins.
    507 #: inc/TGM/class-tgm-plugin-activation.php:2392
    508 #, php-format
     497#: inc/TGM/class-tgm-plugin-activation.php:2540
    509498msgid "To Install <span class=\"count\">(%s)</span>"
    510499msgid_plural "To Install <span class=\"count\">(%s)</span>"
    … …  
    513502
    514503#. translators: 1: number of plugins.
    515 #: inc/TGM/class-tgm-plugin-activation.php:2396
    516 #, php-format
     504#: inc/TGM/class-tgm-plugin-activation.php:2544
    517505msgid "Update Available <span class=\"count\">(%s)</span>"
    518506msgid_plural "Update Available <span class=\"count\">(%s)</span>"
    … …  
    521509
    522510#. translators: 1: number of plugins.
    523 #: inc/TGM/class-tgm-plugin-activation.php:2400
    524 #, php-format
     511#: inc/TGM/class-tgm-plugin-activation.php:2548
    525512msgid "To Activate <span class=\"count\">(%s)</span>"
    526513msgid_plural "To Activate <span class=\"count\">(%s)</span>"
    … …  
    528515msgstr[1] ""
    529516
    530 #: inc/TGM/class-tgm-plugin-activation.php:2482
     517#: inc/TGM/class-tgm-plugin-activation.php:2630
    531518msgctxt "as in: \"version nr unknown\""
    532519msgid "unknown"
    533520msgstr ""
    534521
    535 #: inc/TGM/class-tgm-plugin-activation.php:2490
     522#: inc/TGM/class-tgm-plugin-activation.php:2638
    536523msgid "Installed version:"
    537524msgstr ""
    538525
    539 #: inc/TGM/class-tgm-plugin-activation.php:2498
     526#: inc/TGM/class-tgm-plugin-activation.php:2646
    540527msgid "Minimum required version:"
    541528msgstr ""
    542529
    543 #: inc/TGM/class-tgm-plugin-activation.php:2510
     530#: inc/TGM/class-tgm-plugin-activation.php:2658
    544531msgid "Available version:"
    545532msgstr ""
    546533
    547 #: inc/TGM/class-tgm-plugin-activation.php:2533
     534#: inc/TGM/class-tgm-plugin-activation.php:2681
    548535msgid "No plugins to install, update or activate."
    549536msgstr ""
    550537
    551 #: inc/TGM/class-tgm-plugin-activation.php:2547
     538#: inc/TGM/class-tgm-plugin-activation.php:2695
    552539msgid "Plugin"
    553540msgstr ""
    554541
    555 #: inc/TGM/class-tgm-plugin-activation.php:2548
     542#: inc/TGM/class-tgm-plugin-activation.php:2696
    556543msgid "Source"
    557544msgstr ""
    558545
    559 #: inc/TGM/class-tgm-plugin-activation.php:2549
     546#: inc/TGM/class-tgm-plugin-activation.php:2697
    560547msgid "Type"
    561548msgstr ""
    562549
    563 #: inc/TGM/class-tgm-plugin-activation.php:2553
     550#: inc/TGM/class-tgm-plugin-activation.php:2701
    564551msgid "Version"
    565552msgstr ""
    566553
    567 #: inc/TGM/class-tgm-plugin-activation.php:2554
     554#: inc/TGM/class-tgm-plugin-activation.php:2702
    568555msgid "Status"
    569556msgstr ""
    570557
    571558#. translators: %2$s: plugin name in screen reader markup
    572 #: inc/TGM/class-tgm-plugin-activation.php:2603
    573 #, php-format
     559#: inc/TGM/class-tgm-plugin-activation.php:2751
    574560msgid "Install %2$s"
    575561msgstr ""
    576562
    577563#. translators: %2$s: plugin name in screen reader markup
    578 #: inc/TGM/class-tgm-plugin-activation.php:2608
    579 #, php-format
     564#: inc/TGM/class-tgm-plugin-activation.php:2756
    580565msgid "Update %2$s"
    581566msgstr ""
    582567
    583568#. translators: %2$s: plugin name in screen reader markup
    584 #: inc/TGM/class-tgm-plugin-activation.php:2614
    585 #, php-format
     569#: inc/TGM/class-tgm-plugin-activation.php:2762
    586570msgid "Activate %2$s"
    587571msgstr ""
    588572
    589 #: inc/TGM/class-tgm-plugin-activation.php:2684
     573#: inc/TGM/class-tgm-plugin-activation.php:2834
    590574msgid "Upgrade message from the plugin author:"
    591575msgstr ""
    592576
    593 #: inc/TGM/class-tgm-plugin-activation.php:2717
     577#: inc/TGM/class-tgm-plugin-activation.php:2867
    594578msgid "Install"
    595579msgstr ""
    596580
    597 #: inc/TGM/class-tgm-plugin-activation.php:2723
     581#: inc/TGM/class-tgm-plugin-activation.php:2873
    598582msgid "Update"
    599583msgstr ""
    600584
    601 #: inc/TGM/class-tgm-plugin-activation.php:2726
     585#: inc/TGM/class-tgm-plugin-activation.php:2876
    602586msgid "Activate"
    603587msgstr ""
    604588
    605 #: inc/TGM/class-tgm-plugin-activation.php:2757
     589#: inc/TGM/class-tgm-plugin-activation.php:2907
    606590msgid "No plugins were selected to be installed. No action taken."
    607591msgstr ""
    608592
    609 #: inc/TGM/class-tgm-plugin-activation.php:2759
     593#: inc/TGM/class-tgm-plugin-activation.php:2909
    610594msgid "No plugins were selected to be updated. No action taken."
    611595msgstr ""
    612596
    613 #: inc/TGM/class-tgm-plugin-activation.php:2800
     597#: inc/TGM/class-tgm-plugin-activation.php:2950
    614598msgid "No plugins are available to be installed at this time."
    615599msgstr ""
    616600
    617 #: inc/TGM/class-tgm-plugin-activation.php:2802
     601#: inc/TGM/class-tgm-plugin-activation.php:2952
    618602msgid "No plugins are available to be updated at this time."
    619603msgstr ""
    620604
    621 #: inc/TGM/class-tgm-plugin-activation.php:2908
     605#: inc/TGM/class-tgm-plugin-activation.php:3059
    622606msgid "No plugins were selected to be activated. No action taken."
    623607msgstr ""
    624608
    625 #: inc/TGM/class-tgm-plugin-activation.php:2934
     609#: inc/TGM/class-tgm-plugin-activation.php:3085
    626610msgid "No plugins are available to be activated at this time."
    627611msgstr ""
    628612
    629 #: inc/TGM/class-tgm-plugin-activation.php:3158
     613#: inc/TGM/class-tgm-plugin-activation.php:3310
    630614msgid "Plugin activation failed."
    631615msgstr ""
    632616
    633617#. translators: 1: plugin name, 2: action number 3: total number of actions.
    634 #: inc/TGM/class-tgm-plugin-activation.php:3498
    635 #, php-format
     618#: inc/TGM/class-tgm-plugin-activation.php:3655
    636619msgid "Updating Plugin %1$s (%2$d/%3$d)"
    637620msgstr ""
    638621
    639622#. translators: 1: plugin name, 2: error message.
    640 #: inc/TGM/class-tgm-plugin-activation.php:3501
    641 #, php-format
     623#: inc/TGM/class-tgm-plugin-activation.php:3658
    642624msgid "An error occurred while installing %1$s: <strong>%2$s</strong>."
    643625msgstr ""
    644626
    645627#. translators: 1: plugin name.
    646 #: inc/TGM/class-tgm-plugin-activation.php:3503
    647 #, php-format
     628#: inc/TGM/class-tgm-plugin-activation.php:3660
    648629msgid "The installation of %1$s failed."
    649630msgstr ""
    650631
    651 #: inc/TGM/class-tgm-plugin-activation.php:3507
     632#: inc/TGM/class-tgm-plugin-activation.php:3664
    652633msgid "The installation and activation process is starting. This process may take a while on some hosts, so please be patient."
    653634msgstr ""
    654635
    655636#. translators: 1: plugin name.
    656 #: inc/TGM/class-tgm-plugin-activation.php:3509
    657 #, php-format
     637#: inc/TGM/class-tgm-plugin-activation.php:3666
    658638msgid "%1$s installed and activated successfully."
    659639msgstr ""
    660640
     641#: inc/TGM/class-tgm-plugin-activation.php:3667
     642msgid "All installations and activations have been completed."
     643msgstr ""
     644
     645#. translators: 1: plugin name, 2: action number 3: total number of actions.
     646#: inc/TGM/class-tgm-plugin-activation.php:3669
     647msgid "Installing and Activating Plugin %1$s (%2$d/%3$d)"
     648msgstr ""
     649
     650#: inc/TGM/class-tgm-plugin-activation.php:3672
     651msgid "The installation process is starting. This process may take a while on some hosts, so please be patient."
     652msgstr ""
     653
    661654#. translators: 1: plugin name.
    662 #: inc/TGM/class-tgm-plugin-activation.php:3509
    663 #: inc/TGM/class-tgm-plugin-activation.php:3517
     655#: inc/TGM/class-tgm-plugin-activation.php:3674
     656msgid "%1$s installed successfully."
     657msgstr ""
     658
     659#: inc/TGM/class-tgm-plugin-activation.php:3675
     660msgid "All installations have been completed."
     661msgstr ""
     662
     663#. translators: 1: plugin name, 2: action number 3: total number of actions.
     664#: inc/TGM/class-tgm-plugin-activation.php:3677
     665msgid "Installing Plugin %1$s (%2$d/%3$d)"
     666msgstr ""
     667
     668#: inc/TGM/class-tgm-plugin-activation.php:3682
    664669msgid "Show Details"
    665670msgstr ""
    666671
    667 #. translators: 1: plugin name.
    668 #: inc/TGM/class-tgm-plugin-activation.php:3509
    669 #: inc/TGM/class-tgm-plugin-activation.php:3517
     672#: inc/TGM/class-tgm-plugin-activation.php:3682
    670673msgid "Hide Details"
    671 msgstr ""
    672 
    673 #: inc/TGM/class-tgm-plugin-activation.php:3510
    674 msgid "All installations and activations have been completed."
    675 msgstr ""
    676 
    677 #. translators: 1: plugin name, 2: action number 3: total number of actions.
    678 #: inc/TGM/class-tgm-plugin-activation.php:3512
    679 #, php-format
    680 msgid "Installing and Activating Plugin %1$s (%2$d/%3$d)"
    681 msgstr ""
    682 
    683 #: inc/TGM/class-tgm-plugin-activation.php:3515
    684 msgid "The installation process is starting. This process may take a while on some hosts, so please be patient."
    685 msgstr ""
    686 
    687 #. translators: 1: plugin name.
    688 #: inc/TGM/class-tgm-plugin-activation.php:3517
    689 #, php-format
    690 msgid "%1$s installed successfully."
    691 msgstr ""
    692 
    693 #: inc/TGM/class-tgm-plugin-activation.php:3518
    694 msgid "All installations have been completed."
    695 msgstr ""
    696 
    697 #. translators: 1: plugin name, 2: action number 3: total number of actions.
    698 #: inc/TGM/class-tgm-plugin-activation.php:3520
    699 #, php-format
    700 msgid "Installing Plugin %1$s (%2$d/%3$d)"
    701674msgstr ""
    702675
    … …  
    756729#: patterns/banner.php:125
    757730#: patterns/banner.php:151
    758 msgid "$99"
     731msgid "$89"
    759732msgstr ""
    760733
    … …  
    905878#: patterns/header.php:176
    906879msgid "+1-202-555-0104"
     880msgstr ""
     881
     882#: patterns/index-header-image.php
     883msgctxt "Pattern title"
     884msgid "Index Header Image"
     885msgstr ""
     886
     887#: patterns/index-header-image.php:11
     888msgid "blog"
    907889msgstr ""
    908890
    … …  
    10321014
    10331015#: patterns/sidebar.php:48
     1016msgid "Pages"
     1017msgstr ""
     1018
     1019#: patterns/sidebar.php:58
    10341020msgid "Archives"
    10351021msgstr ""
    10361022
    1037 #: patterns/sidebar.php:58
     1023#: patterns/sidebar.php:68
    10381024msgid "Tags"
    10391025msgstr ""
    10401026
    1041 #: patterns/sidebar.php:68
     1027#: patterns/sidebar.php:78
    10421028msgid "Follow Us"
    10431029msgstr ""
    … …  
    10861072msgstr ""
    10871073
    1088 #: theme.json
    1089 msgctxt "Style variation name"
    1090 msgid "Lite"
    1091 msgstr ""
    1092 
    1093 #: theme.json
    1094 msgctxt "Gradient name"
    1095 msgid "Vertical heading to base"
    1096 msgstr ""
    1097 
    1098 #: theme.json
    1099 msgctxt "Gradient name"
    1100 msgid "Vertical base to heading"
    1101 msgstr ""
    1102 
    1103 #: theme.json
    1104 msgctxt "Gradient name"
    1105 msgid "Heading to base"
    1106 msgstr ""
    1107 
    1108 #: theme.json
    1109 msgctxt "Gradient name"
    1110 msgid "Base to heading"
    1111 msgstr ""
    1112 
    1113 #: theme.json
    1114 msgctxt "Gradient name"
    1115 msgid "Diagonal heading to base left"
    1116 msgstr ""
    1117 
    1118 #: theme.json
    1119 msgctxt "Gradient name"
    1120 msgid "Diagonal heading to base right"
    1121 msgstr ""
    1122 
    1123 #: theme.json
    1124 msgctxt "Gradient name"
    1125 msgid "Diagonal base to heading"
    1126 msgstr ""
    1127 
    1128 #: theme.json
    1129 msgctxt "Gradient name"
    1130 msgid "Diagonal heading to base"
    1131 msgstr ""
    1132 
    1133 #: theme.json
    1134 msgctxt "Gradient name"
    1135 msgid "Vertical heading to primary"
    1136 msgstr ""
    1137 
    1138 #: theme.json
    1139 msgctxt "Gradient name"
    1140 msgid "Vertical primary to heading"
    1141 msgstr ""
    1142 
    1143 #: theme.json
    1144 msgctxt "Gradient name"
    1145 msgid "Heading to primary"
    1146 msgstr ""
    1147 
    1148 #: theme.json
    1149 msgctxt "Gradient name"
    1150 msgid "Primary to heading"
    1151 msgstr ""
    1152 
    1153 #: theme.json
    1154 msgctxt "Gradient name"
    1155 msgid "Diagonal heading to primary left"
    1156 msgstr ""
    1157 
    1158 #: theme.json
    1159 msgctxt "Gradient name"
    1160 msgid "Diagonal heading to primary right"
    1161 msgstr ""
    1162 
    1163 #: theme.json
    1164 msgctxt "Gradient name"
    1165 msgid "Diagonal primary to heading"
    1166 msgstr ""
    1167 
    1168 #: theme.json
    1169 msgctxt "Gradient name"
    1170 msgid "Diagonal heading to primary"
    1171 msgstr ""
    1172 
    1173 #: theme.json
    1174 msgctxt "Gradient name"
    1175 msgid "Vertical primary to secondary"
    1176 msgstr ""
    1177 
    1178 #: theme.json
    1179 msgctxt "Gradient name"
    1180 msgid "Vertical secondary to primary"
    1181 msgstr ""
    1182 
    1183 #: theme.json
    1184 msgctxt "Gradient name"
    1185 msgid "secondary to primary"
    1186 msgstr ""
    1187 
    1188 #: theme.json
    1189 msgctxt "Gradient name"
    1190 msgid "Primary to secondary"
    1191 msgstr ""
    1192 
    1193 #: theme.json
    1194 msgctxt "Gradient name"
    1195 msgid "Diagonal primary to secondary left"
    1196 msgstr ""
    1197 
    1198 #: theme.json
    1199 msgctxt "Gradient name"
    1200 msgid "Diagonal primary to secondary right"
    1201 msgstr ""
    1202 
    1203 #: theme.json
    1204 msgctxt "Gradient name"
    1205 msgid "Diagonal secondary to primary"
    1206 msgstr ""
    1207 
    1208 #: theme.json
    1209 msgctxt "Gradient name"
    1210 msgid "Diagonal primary to secondary"
    1211 msgstr ""
    1212 
    1213 #: theme.json
    1214 #: styles/dark.json
    1215 #: styles/pink-blue.json
    1216 #: styles/red-green.json
    1217 #: styles/teal.json
    1218 #: styles/yellow-blue.json
    1219 msgctxt "Color name"
    1220 msgid "Base"
    1221 msgstr ""
    1222 
    1223 #: theme.json
    1224 #: styles/dark.json
    1225 #: styles/pink-blue.json
    1226 #: styles/red-green.json
    1227 #: styles/teal.json
    1228 #: styles/yellow-blue.json
    1229 msgctxt "Color name"
    1230 msgid "Primary"
    1231 msgstr ""
    1232 
    1233 #: theme.json
    1234 #: styles/dark.json
    1235 #: styles/pink-blue.json
    1236 #: styles/red-green.json
    1237 #: styles/teal.json
    1238 #: styles/yellow-blue.json
    1239 msgctxt "Color name"
    1240 msgid "Primary Light"
    1241 msgstr ""
    1242 
    1243 #: theme.json
    1244 #: styles/dark.json
    1245 #: styles/pink-blue.json
    1246 #: styles/red-green.json
    1247 #: styles/teal.json
    1248 #: styles/yellow-blue.json
    1249 msgctxt "Color name"
    1250 msgid "Secondary"
    1251 msgstr ""
    1252 
    1253 #: theme.json
    1254 #: styles/dark.json
    1255 #: styles/pink-blue.json
    1256 #: styles/red-green.json
    1257 #: styles/teal.json
    1258 #: styles/yellow-blue.json
    1259 msgctxt "Color name"
    1260 msgid "Headings"
    1261 msgstr ""
    1262 
    1263 #: theme.json
    1264 #: styles/dark.json
    1265 #: styles/pink-blue.json
    1266 #: styles/red-green.json
    1267 #: styles/teal.json
    1268 #: styles/yellow-blue.json
    1269 msgctxt "Color name"
    1270 msgid "Body Text"
    1271 msgstr ""
    1272 
    1273 #: theme.json
    1274 #: styles/dark.json
    1275 #: styles/pink-blue.json
    1276 #: styles/red-green.json
    1277 #: styles/teal.json
    1278 #: styles/yellow-blue.json
    1279 msgctxt "Color name"
    1280 msgid "Section Background"
    1281 msgstr ""
    1282 
    1283 #: theme.json
    1284 #: styles/dark.json
    1285 #: styles/pink-blue.json
    1286 #: styles/red-green.json
    1287 #: styles/teal.json
    1288 #: styles/yellow-blue.json
    1289 msgctxt "Color name"
    1290 msgid "Background"
    1291 msgstr ""
    1292 
    1293 #: theme.json
    1294 #: styles/dark.json
    1295 #: styles/pink-blue.json
    1296 #: styles/red-green.json
    1297 #: styles/teal.json
    1298 #: styles/yellow-blue.json
    1299 msgctxt "Color name"
    1300 msgid "Foreground"
    1301 msgstr ""
    1302 
    1303 #: theme.json
    1304 #: styles/dark.json
    1305 #: styles/pink-blue.json
    1306 #: styles/red-green.json
    1307 #: styles/teal.json
    1308 #: styles/yellow-blue.json
    1309 msgctxt "Color name"
    1310 msgid "Footer Bg"
    1311 msgstr ""
    1312 
    1313 #: theme.json
    1314 #: styles/dark.json
    1315 #: styles/pink-blue.json
    1316 #: styles/red-green.json
    1317 #: styles/teal.json
    1318 #: styles/yellow-blue.json
    1319 msgctxt "Color name"
    1320 msgid "Border Color"
    1321 msgstr ""
    1322 
    1323 #: theme.json
    1324 #: styles/dark.json
    1325 #: styles/pink-blue.json
    1326 #: styles/red-green.json
    1327 #: styles/teal.json
    1328 #: styles/yellow-blue.json
    1329 msgctxt "Color name"
    1330 msgid "Sidebar Shadow Color"
    1331 msgstr ""
    1332 
    1333 #: theme.json
    1334 msgctxt "Font family name"
    1335 msgid "Righteous"
    1336 msgstr ""
    1337 
    1338 #: theme.json
    1339 msgctxt "Font family name"
    1340 msgid "Figtree"
    1341 msgstr ""
    1342 
    1343 #: theme.json
    1344 msgctxt "Font family name"
    1345 msgid "Outfit"
    1346 msgstr ""
    1347 
    1348 #: theme.json
    1349 msgctxt "Font family name"
    1350 msgid "Lora"
    1351 msgstr ""
    1352 
    1353 #: theme.json
    1354 msgctxt "Font family name"
    1355 msgid "Inter"
    1356 msgstr ""
    1357 
    1358 #: theme.json
    1359 msgctxt "Font family name"
    1360 msgid "Public Sans"
    1361 msgstr ""
    1362 
    1363 #: theme.json
    1364 msgctxt "Font size name"
    1365 msgid "Body Text"
    1366 msgstr ""
    1367 
    1368 #: theme.json
    1369 msgctxt "Font size name"
    1370 msgid "Extra Small"
    1371 msgstr ""
    1372 
    1373 #: theme.json
    1374 msgctxt "Font size name"
    1375 msgid "Small"
    1376 msgstr ""
    1377 
    1378 #: theme.json
    1379 msgctxt "Font size name"
    1380 msgid "Medium"
    1381 msgstr ""
    1382 
    1383 #: theme.json
    1384 msgctxt "Font size name"
    1385 msgid "Regular"
    1386 msgstr ""
    1387 
    1388 #: theme.json
    1389 msgctxt "Font size name"
    1390 msgid "Large"
    1391 msgstr ""
    1392 
    1393 #: theme.json
    1394 msgctxt "Font size name"
    1395 msgid "Extra Large"
    1396 msgstr ""
    1397 
    1398 #: theme.json
    1399 msgctxt "Font size name"
    1400 msgid "Big"
    1401 msgstr ""
    1402 
    1403 #: theme.json
    1404 msgctxt "Font size name"
    1405 msgid "Huge"
    1406 msgstr ""
    1407 
    1408 #: theme.json
    1409 msgctxt "Font size name"
    1410 msgid "Gigantic"
    1411 msgstr ""
    1412 
    1413 #: theme.json
    1414 msgctxt "Font size name"
    1415 msgid "Banner Title"
    1416 msgstr ""
    1417 
    1418 #: theme.json
    1419 msgctxt "Template part name"
    1420 msgid "Header"
    1421 msgstr ""
    1422 
    1423 #: theme.json
    1424 msgctxt "Template part name"
    1425 msgid "Footer"
    1426 msgstr ""
    1427 
    1428 #: theme.json
    1429 msgctxt "Template part name"
    1430 msgid "Sidebar"
    1431 msgstr ""
    1432 
    1433 #: theme.json
    1434 msgctxt "Custom template name"
    1435 msgid "Grid Layout(Archieve posts)"
    1436 msgstr ""
    1437 
    1438 #: theme.json
    1439 msgctxt "Custom template name"
    1440 msgid "Left Sidebar(Archieve posts)"
    1441 msgstr ""
    1442 
    1443 #: theme.json
    1444 msgctxt "Custom template name"
    1445 msgid "Right Sidebar(Archieve posts)"
    1446 msgstr ""
    1447 
    1448 #: theme.json
    1449 msgctxt "Custom template name"
    1450 msgid "Page Left Sidebar"
    1451 msgstr ""
    1452 
    1453 #: theme.json
    1454 msgctxt "Custom template name"
    1455 msgid "Page Right Sidebar"
    1456 msgstr ""
    1457 
    1458 #: theme.json
    1459 msgctxt "Custom template name"
    1460 msgid "Page No Header Image"
    1461 msgstr ""
    1462 
    1463 #: theme.json
    1464 msgctxt "Custom template name"
    1465 msgid "Post Left Sidebar"
    1466 msgstr ""
    1467 
    1468 #: theme.json
    1469 msgctxt "Custom template name"
    1470 msgid "Post No Sidebar"
    1471 msgstr ""
    1472 
    1473 #: theme.json
    1474 msgctxt "Custom template name"
    1475 msgid "Post No Header Image"
    1476 msgstr ""
    1477 
    14781074#: styles/dark.json
    14791075msgctxt "Style variation name"
    … …  
    14811077msgstr ""
    14821078
     1079#: styles/dark.json
     1080#: styles/ember-glow.json
     1081#: styles/pink-blue.json
     1082#: styles/red-green.json
     1083#: styles/sky-surge.json
     1084#: styles/teal.json
     1085#: styles/yellow-blue.json
     1086#: theme.json
     1087msgctxt "Color name"
     1088msgid "Base"
     1089msgstr ""
     1090
     1091#: styles/dark.json
     1092#: styles/ember-glow.json
     1093#: styles/pink-blue.json
     1094#: styles/red-green.json
     1095#: styles/sky-surge.json
     1096#: styles/teal.json
     1097#: styles/yellow-blue.json
     1098#: theme.json
     1099msgctxt "Color name"
     1100msgid "Primary"
     1101msgstr ""
     1102
     1103#: styles/dark.json
     1104#: styles/ember-glow.json
     1105#: styles/pink-blue.json
     1106#: styles/red-green.json
     1107#: styles/sky-surge.json
     1108#: styles/teal.json
     1109#: styles/yellow-blue.json
     1110#: theme.json
     1111msgctxt "Color name"
     1112msgid "Primary Light"
     1113msgstr ""
     1114
     1115#: styles/dark.json
     1116#: styles/ember-glow.json
     1117#: styles/pink-blue.json
     1118#: styles/red-green.json
     1119#: styles/sky-surge.json
     1120#: styles/teal.json
     1121#: styles/yellow-blue.json
     1122#: theme.json
     1123msgctxt "Color name"
     1124msgid "Secondary"
     1125msgstr ""
     1126
     1127#: styles/dark.json
     1128#: styles/ember-glow.json
     1129#: styles/pink-blue.json
     1130#: styles/red-green.json
     1131#: styles/sky-surge.json
     1132#: styles/teal.json
     1133#: styles/yellow-blue.json
     1134#: theme.json
     1135msgctxt "Color name"
     1136msgid "Banner Background"
     1137msgstr ""
     1138
     1139#: styles/dark.json
     1140#: styles/ember-glow.json
     1141#: styles/pink-blue.json
     1142#: styles/red-green.json
     1143#: styles/sky-surge.json
     1144#: styles/teal.json
     1145#: styles/yellow-blue.json
     1146#: theme.json
     1147msgctxt "Color name"
     1148msgid "Product Background"
     1149msgstr ""
     1150
     1151#: styles/dark.json
     1152#: styles/ember-glow.json
     1153#: styles/pink-blue.json
     1154#: styles/red-green.json
     1155#: styles/sky-surge.json
     1156#: styles/teal.json
     1157#: styles/yellow-blue.json
     1158#: theme.json
     1159msgctxt "Color name"
     1160msgid "Headings"
     1161msgstr ""
     1162
     1163#: styles/dark.json
     1164#: styles/ember-glow.json
     1165#: styles/pink-blue.json
     1166#: styles/red-green.json
     1167#: styles/sky-surge.json
     1168#: styles/teal.json
     1169#: styles/yellow-blue.json
     1170#: theme.json
     1171msgctxt "Color name"
     1172msgid "Body Text"
     1173msgstr ""
     1174
     1175#: styles/dark.json
     1176#: styles/ember-glow.json
     1177#: styles/pink-blue.json
     1178#: styles/red-green.json
     1179#: styles/sky-surge.json
     1180#: styles/teal.json
     1181#: styles/yellow-blue.json
     1182#: theme.json
     1183msgctxt "Color name"
     1184msgid "Section Background"
     1185msgstr ""
     1186
     1187#: styles/dark.json
     1188#: styles/ember-glow.json
     1189#: styles/pink-blue.json
     1190#: styles/red-green.json
     1191#: styles/sky-surge.json
     1192#: styles/teal.json
     1193#: styles/yellow-blue.json
     1194#: theme.json
     1195msgctxt "Color name"
     1196msgid "Background"
     1197msgstr ""
     1198
     1199#: styles/dark.json
     1200#: styles/ember-glow.json
     1201#: styles/pink-blue.json
     1202#: styles/red-green.json
     1203#: styles/sky-surge.json
     1204#: styles/teal.json
     1205#: styles/yellow-blue.json
     1206#: theme.json
     1207msgctxt "Color name"
     1208msgid "Foreground"
     1209msgstr ""
     1210
     1211#: styles/dark.json
     1212#: styles/ember-glow.json
     1213#: styles/pink-blue.json
     1214#: styles/red-green.json
     1215#: styles/sky-surge.json
     1216#: styles/teal.json
     1217#: styles/yellow-blue.json
     1218#: theme.json
     1219msgctxt "Color name"
     1220msgid "Footer Bg"
     1221msgstr ""
     1222
     1223#: styles/dark.json
     1224#: styles/ember-glow.json
     1225#: styles/pink-blue.json
     1226#: styles/red-green.json
     1227#: styles/sky-surge.json
     1228#: styles/teal.json
     1229#: styles/yellow-blue.json
     1230#: theme.json
     1231msgctxt "Color name"
     1232msgid "Border Color"
     1233msgstr ""
     1234
     1235#: styles/dark.json
     1236#: styles/ember-glow.json
     1237#: styles/pink-blue.json
     1238#: styles/red-green.json
     1239#: styles/sky-surge.json
     1240#: styles/teal.json
     1241#: styles/yellow-blue.json
     1242#: theme.json
     1243msgctxt "Color name"
     1244msgid "Sidebar Shadow Color"
     1245msgstr ""
     1246
     1247#: styles/ember-glow.json
     1248msgctxt "Style variation name"
     1249msgid "Ember Glow"
     1250msgstr ""
     1251
    14831252#: styles/pink-blue.json
    14841253msgctxt "Style variation name"
    … …  
    14911260msgstr ""
    14921261
     1262#: styles/sky-surge.json
     1263msgctxt "Style variation name"
     1264msgid "Sky Surge"
     1265msgstr ""
     1266
    14931267#: styles/teal.json
    14941268msgctxt "Style variation name"
    … …  
    15001274msgid "Yellow-Blue"
    15011275msgstr ""
     1276
     1277#: theme.json
     1278msgctxt "Style variation name"
     1279msgid "Lite"
     1280msgstr ""
     1281
     1282#: theme.json
     1283msgctxt "Gradient name"
     1284msgid "Vertical heading to base"
     1285msgstr ""
     1286
     1287#: theme.json
     1288msgctxt "Gradient name"
     1289msgid "Vertical base to heading"
     1290msgstr ""
     1291
     1292#: theme.json
     1293msgctxt "Gradient name"
     1294msgid "Heading to base"
     1295msgstr ""
     1296
     1297#: theme.json
     1298msgctxt "Gradient name"
     1299msgid "Base to heading"
     1300msgstr ""
     1301
     1302#: theme.json
     1303msgctxt "Gradient name"
     1304msgid "Diagonal heading to base left"
     1305msgstr ""
     1306
     1307#: theme.json
     1308msgctxt "Gradient name"
     1309msgid "Diagonal heading to base right"
     1310msgstr ""
     1311
     1312#: theme.json
     1313msgctxt "Gradient name"
     1314msgid "Diagonal base to heading"
     1315msgstr ""
     1316
     1317#: theme.json
     1318msgctxt "Gradient name"
     1319msgid "Diagonal heading to base"
     1320msgstr ""
     1321
     1322#: theme.json
     1323msgctxt "Gradient name"
     1324msgid "Vertical heading to primary"
     1325msgstr ""
     1326
     1327#: theme.json
     1328msgctxt "Gradient name"
     1329msgid "Vertical primary to heading"
     1330msgstr ""
     1331
     1332#: theme.json
     1333msgctxt "Gradient name"
     1334msgid "Heading to primary"
     1335msgstr ""
     1336
     1337#: theme.json
     1338msgctxt "Gradient name"
     1339msgid "Primary to heading"
     1340msgstr ""
     1341
     1342#: theme.json
     1343msgctxt "Gradient name"
     1344msgid "Diagonal heading to primary left"
     1345msgstr ""
     1346
     1347#: theme.json
     1348msgctxt "Gradient name"
     1349msgid "Diagonal heading to primary right"
     1350msgstr ""
     1351
     1352#: theme.json
     1353msgctxt "Gradient name"
     1354msgid "Diagonal primary to heading"
     1355msgstr ""
     1356
     1357#: theme.json
     1358msgctxt "Gradient name"
     1359msgid "Diagonal heading to primary"
     1360msgstr ""
     1361
     1362#: theme.json
     1363msgctxt "Gradient name"
     1364msgid "Vertical primary to secondary"
     1365msgstr ""
     1366
     1367#: theme.json
     1368msgctxt "Gradient name"
     1369msgid "Vertical secondary to primary"
     1370msgstr ""
     1371
     1372#: theme.json
     1373msgctxt "Gradient name"
     1374msgid "secondary to primary"
     1375msgstr ""
     1376
     1377#: theme.json
     1378msgctxt "Gradient name"
     1379msgid "Primary to secondary"
     1380msgstr ""
     1381
     1382#: theme.json
     1383msgctxt "Gradient name"
     1384msgid "Diagonal primary to secondary left"
     1385msgstr ""
     1386
     1387#: theme.json
     1388msgctxt "Gradient name"
     1389msgid "Diagonal primary to secondary right"
     1390msgstr ""
     1391
     1392#: theme.json
     1393msgctxt "Gradient name"
     1394msgid "Diagonal secondary to primary"
     1395msgstr ""
     1396
     1397#: theme.json
     1398msgctxt "Gradient name"
     1399msgid "Diagonal primary to secondary"
     1400msgstr ""
     1401
     1402#: theme.json
     1403msgctxt "Font family name"
     1404msgid "Righteous"
     1405msgstr ""
     1406
     1407#: theme.json
     1408msgctxt "Font family name"
     1409msgid "Figtree"
     1410msgstr ""
     1411
     1412#: theme.json
     1413msgctxt "Font family name"
     1414msgid "Outfit"
     1415msgstr ""
     1416
     1417#: theme.json
     1418msgctxt "Font family name"
     1419msgid "Lora"
     1420msgstr ""
     1421
     1422#: theme.json
     1423msgctxt "Font family name"
     1424msgid "Inter"
     1425msgstr ""
     1426
     1427#: theme.json
     1428msgctxt "Font family name"
     1429msgid "Public Sans"
     1430msgstr ""
     1431
     1432#: theme.json
     1433msgctxt "Font size name"
     1434msgid "Body Text"
     1435msgstr ""
     1436
     1437#: theme.json
     1438msgctxt "Font size name"
     1439msgid "Extra Small"
     1440msgstr ""
     1441
     1442#: theme.json
     1443msgctxt "Font size name"
     1444msgid "Small"
     1445msgstr ""
     1446
     1447#: theme.json
     1448msgctxt "Font size name"
     1449msgid "Medium"
     1450msgstr ""
     1451
     1452#: theme.json
     1453msgctxt "Font size name"
     1454msgid "Regular"
     1455msgstr ""
     1456
     1457#: theme.json
     1458msgctxt "Font size name"
     1459msgid "Large"
     1460msgstr ""
     1461
     1462#: theme.json
     1463msgctxt "Font size name"
     1464msgid "Extra Large"
     1465msgstr ""
     1466
     1467#: theme.json
     1468msgctxt "Font size name"
     1469msgid "Big"
     1470msgstr ""
     1471
     1472#: theme.json
     1473msgctxt "Font size name"
     1474msgid "Huge"
     1475msgstr ""
     1476
     1477#: theme.json
     1478msgctxt "Font size name"
     1479msgid "Gigantic"
     1480msgstr ""
     1481
     1482#: theme.json
     1483msgctxt "Font size name"
     1484msgid "Banner Title"
     1485msgstr ""
     1486
     1487#: theme.json
     1488msgctxt "Template part name"
     1489msgid "Header"
     1490msgstr ""
     1491
     1492#: theme.json
     1493msgctxt "Template part name"
     1494msgid "Footer"
     1495msgstr ""
     1496
     1497#: theme.json
     1498msgctxt "Template part name"
     1499msgid "Sidebar"
     1500msgstr ""
     1501
     1502#: theme.json
     1503msgctxt "Custom template name"
     1504msgid "Grid Layout(Archieve posts)"
     1505msgstr ""
     1506
     1507#: theme.json
     1508msgctxt "Custom template name"
     1509msgid "Left Sidebar(Archieve posts)"
     1510msgstr ""
     1511
     1512#: theme.json
     1513msgctxt "Custom template name"
     1514msgid "Right Sidebar(Archieve posts)"
     1515msgstr ""
     1516
     1517#: theme.json
     1518msgctxt "Custom template name"
     1519msgid "Page Left Sidebar"
     1520msgstr ""
     1521
     1522#: theme.json
     1523msgctxt "Custom template name"
     1524msgid "Page Right Sidebar"
     1525msgstr ""
     1526
     1527#: theme.json
     1528msgctxt "Custom template name"
     1529msgid "Page No Header Image"
     1530msgstr ""
     1531
     1532#: theme.json
     1533msgctxt "Custom template name"
     1534msgid "Post Left Sidebar"
     1535msgstr ""
     1536
     1537#: theme.json
     1538msgctxt "Custom template name"
     1539msgid "Post No Sidebar"
     1540msgstr ""
     1541
     1542#: theme.json
     1543msgctxt "Custom template name"
     1544msgid "Post No Header Image"
     1545msgstr ""
  • hardware-tools-store/3.3/patterns/banner.php

    r290459 r311639  
    2323
    2424<!-- wp:paragraph {"style":{"typography":{"fontSize":"20px","fontStyle":"normal","fontWeight":"700"},"spacing":{"margin":{"top":"0"}},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    25 <p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$99', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
     25<p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$89', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
    2626<!-- /wp:paragraph -->
    2727
    … …  
    4949<div class="wp-block-group circle has-primary-background-color has-background" style="margin-top:0;margin-bottom:0"><!-- wp:group {"className":"circle-inner","layout":{"type":"constrained"}} -->
    5050<div class="wp-block-group circle-inner"><!-- wp:paragraph {"align":"center","style":{"typography":{"fontSize":"28px","fontStyle":"normal","fontWeight":"600"},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    51 <p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$99', 'hardware-tools-store'); ?></p>
     51<p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$89', 'hardware-tools-store'); ?></p>
    5252<!-- /wp:paragraph -->
    5353
    … …  
    7373
    7474<!-- wp:paragraph {"style":{"typography":{"fontSize":"20px","fontStyle":"normal","fontWeight":"700"},"spacing":{"margin":{"top":"0"}},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    75 <p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$99', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
     75<p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$89', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
    7676<!-- /wp:paragraph -->
    7777
    … …  
    9999<div class="wp-block-group circle has-primary-background-color has-background" style="margin-top:0;margin-bottom:0"><!-- wp:group {"className":"circle-inner","layout":{"type":"constrained"}} -->
    100100<div class="wp-block-group circle-inner"><!-- wp:paragraph {"align":"center","style":{"typography":{"fontSize":"28px","fontStyle":"normal","fontWeight":"600"},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    101 <p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$99', 'hardware-tools-store'); ?></p>
     101<p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$89', 'hardware-tools-store'); ?></p>
    102102<!-- /wp:paragraph -->
    103103
    … …  
    123123
    124124<!-- wp:paragraph {"style":{"typography":{"fontSize":"20px","fontStyle":"normal","fontWeight":"700"},"spacing":{"margin":{"top":"0"}},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    125 <p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$99', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
     125<p class="has-black-color has-text-color has-link-color" style="margin-top:0;font-size:20px;font-style:normal;font-weight:700"><?php esc_html_e('Start Tools At ', 'hardware-tools-store'); ?><span><?php esc_html_e('$89', 'hardware-tools-store'); ?></span><?php esc_html_e(' Only', 'hardware-tools-store'); ?></p>
    126126<!-- /wp:paragraph -->
    127127
    … …  
    149149<div class="wp-block-group circle has-primary-background-color has-background" style="margin-top:0;margin-bottom:0"><!-- wp:group {"className":"circle-inner","layout":{"type":"constrained"}} -->
    150150<div class="wp-block-group circle-inner"><!-- wp:paragraph {"align":"center","style":{"typography":{"fontSize":"28px","fontStyle":"normal","fontWeight":"600"},"elements":{"link":{"color":{"text":"var:preset|color|black"}}}},"textColor":"black"} -->
    151 <p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$99', 'hardware-tools-store'); ?></p>
     151<p class="has-text-align-center has-black-color has-text-color has-link-color" style="font-size:28px;font-style:normal;font-weight:600"><?php esc_html_e('$89', 'hardware-tools-store'); ?></p>
    152152<!-- /wp:paragraph -->
    153153
  • hardware-tools-store/3.3/readme.txt

    r307253 r311639  
    55Tested up to: 6.9
    66Requires PHP: 5.6
    7 Stable tag: 3.2
     7Stable tag: 3.3
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
    … …  
    200200= 3.2 =
    201201* Resolves css bugs.
     202
     203= 3.3 =
     204* Added single page no sidebar template.
     205* Added single post sidebar on left template.
     206* Added hover effect on sidebar blogs.
     207* Change the bundle price.
     208* Fixed responsive of get start.
     209* Set the all heading in h2 tag.
     210* Resolved tgm error.
     211* Updated pot file.
  • hardware-tools-store/3.3/style.css

    r307253 r311639  
    88Tested up to: 6.9
    99Requires PHP: 5.6
    10 Version: 3.2
     10Version: 3.3
    1111License: GNU General Public License
    1212License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
    … …  
    369369    position: relative;
    370370    box-shadow: 0px 4px 9px var(--wp--preset--color--sidebar-shadow-color);
     371    transition: transform 0.4s ease, box-shadow 0.4s ease;
     372}
     373.sidebar-box:hover{
     374    transform: translateY(-6px);
     375    box-shadow:0 18px 40px rgba(0, 0, 0, 0.25), 0 8px 20px rgba(0, 0, 0, 0.20);
    371376}
    372377.sidebar-heading{
  • hardware-tools-store/3.3/templates/blank.html

    r299091 r311639  
    1 <!-- wp:post-content {"style":{"spacing":{"margin":{"top":"var:preset|spacing|60","bottom":"var:preset|spacing|60"}}},"layout":{"inherit":true}} /-->
     1<!-- wp:group {"tagName":"main","layout":{"type":"constrained"}} -->
     2<main class="wp-block-group"><!-- wp:post-content {"style":{"spacing":{"margin":{"top":"var:preset|spacing|60","bottom":"var:preset|spacing|60"}}},"layout":{"inherit":true}} /--></main>
     3<!-- /wp:group -->
Note: See TracChangeset for help on using the changeset viewer.