├── README.md
├── composer.json
├── composer.lock
├── readme.txt
├── remove-drop-cap.php
└── vendor
├── autoload.php
├── collizo4sky
└── persist-admin-notices-dismissal
│ ├── CHANGES.md
│ ├── README.md
│ ├── composer.json
│ ├── dismiss-notice.js
│ └── persist-admin-notices-dismissal.php
├── composer
├── ClassLoader.php
├── InstalledVersions.php
├── LICENSE
├── autoload_classmap.php
├── autoload_files.php
├── autoload_namespaces.php
├── autoload_psr4.php
├── autoload_real.php
├── autoload_static.php
├── installed.json
├── installed.php
└── platform_check.php
└── yahnis-elsts
└── plugin-update-checker
├── .editorconfig
├── .gitignore
├── Puc
├── v4
│ └── Factory.php
└── v4p10
│ ├── Autoloader.php
│ ├── DebugBar
│ ├── Extension.php
│ ├── Panel.php
│ ├── PluginExtension.php
│ ├── PluginPanel.php
│ └── ThemePanel.php
│ ├── Factory.php
│ ├── InstalledPackage.php
│ ├── Metadata.php
│ ├── OAuthSignature.php
│ ├── Plugin
│ ├── Info.php
│ ├── Package.php
│ ├── Ui.php
│ ├── Update.php
│ └── UpdateChecker.php
│ ├── Scheduler.php
│ ├── StateStore.php
│ ├── Theme
│ ├── Package.php
│ ├── Update.php
│ └── UpdateChecker.php
│ ├── Update.php
│ ├── UpdateChecker.php
│ ├── UpgraderStatus.php
│ ├── Utils.php
│ └── Vcs
│ ├── Api.php
│ ├── BaseChecker.php
│ ├── BitBucketApi.php
│ ├── GitHubApi.php
│ ├── GitLabApi.php
│ ├── PluginUpdateChecker.php
│ ├── Reference.php
│ └── ThemeUpdateChecker.php
├── README.md
├── composer.json
├── css
└── puc-debug-bar.css
├── examples
├── plugin.json
└── theme.json
├── js
└── debug-bar.js
├── languages
├── plugin-update-checker-ca.mo
├── plugin-update-checker-ca.po
├── plugin-update-checker-cs_CZ.mo
├── plugin-update-checker-cs_CZ.po
├── plugin-update-checker-da_DK.mo
├── plugin-update-checker-da_DK.po
├── plugin-update-checker-de_DE.mo
├── plugin-update-checker-de_DE.po
├── plugin-update-checker-es_AR.mo
├── plugin-update-checker-es_AR.po
├── plugin-update-checker-es_CL.mo
├── plugin-update-checker-es_CL.po
├── plugin-update-checker-es_CO.mo
├── plugin-update-checker-es_CO.po
├── plugin-update-checker-es_CR.mo
├── plugin-update-checker-es_CR.po
├── plugin-update-checker-es_DO.mo
├── plugin-update-checker-es_DO.po
├── plugin-update-checker-es_ES.mo
├── plugin-update-checker-es_ES.po
├── plugin-update-checker-es_GT.mo
├── plugin-update-checker-es_GT.po
├── plugin-update-checker-es_HN.mo
├── plugin-update-checker-es_HN.po
├── plugin-update-checker-es_MX.mo
├── plugin-update-checker-es_MX.po
├── plugin-update-checker-es_PE.mo
├── plugin-update-checker-es_PE.po
├── plugin-update-checker-es_PR.mo
├── plugin-update-checker-es_PR.po
├── plugin-update-checker-es_UY.mo
├── plugin-update-checker-es_UY.po
├── plugin-update-checker-es_VE.mo
├── plugin-update-checker-es_VE.po
├── plugin-update-checker-fa_IR.mo
├── plugin-update-checker-fa_IR.po
├── plugin-update-checker-fr_CA.mo
├── plugin-update-checker-fr_CA.po
├── plugin-update-checker-fr_FR.mo
├── plugin-update-checker-fr_FR.po
├── plugin-update-checker-hu_HU.mo
├── plugin-update-checker-hu_HU.po
├── plugin-update-checker-it_IT.mo
├── plugin-update-checker-it_IT.po
├── plugin-update-checker-ja.mo
├── plugin-update-checker-ja.po
├── plugin-update-checker-nl_BE.mo
├── plugin-update-checker-nl_BE.po
├── plugin-update-checker-nl_NL.mo
├── plugin-update-checker-nl_NL.po
├── plugin-update-checker-pt_BR.mo
├── plugin-update-checker-pt_BR.po
├── plugin-update-checker-sl_SI.mo
├── plugin-update-checker-sl_SI.po
├── plugin-update-checker-sv_SE.mo
├── plugin-update-checker-sv_SE.po
├── plugin-update-checker-zh_CN.mo
├── plugin-update-checker-zh_CN.po
└── plugin-update-checker.pot
├── license.txt
├── load-v4p10.php
├── plugin-update-checker.php
└── vendor
├── Parsedown.php
├── ParsedownLegacy.php
├── ParsedownModern.php
└── PucReadmeParser.php
/README.md:
--------------------------------------------------------------------------------
1 | # Disable Drop Cap
2 |
3 | | :warning: | Important notice: This repository is no longer updated. I've released version 2.0 of this plugin, which is [available in the WordPress.org plugin repository](https://wordpress.org/plugins/disable-drop-cap/). Since I've changed the plugin slug from remove-drop-cap to disable-drop-cap, you will need to update to the new version manually. Source code for the new version is available [in a separate GitHub repository.](https://github.com/joppuyo/disable-drop-cap-v2) |
4 | |---|:---|
5 |
6 | Plugin to disable drop cap in Gutenberg editor paragraph block.
7 |
8 | ### Note for WordPress 5.8
9 |
10 | With WordPress 5.8, you can use the new `theme.json` feature to disable drop caps in your theme. Add a `theme.json` with the following content in the root of your theme.
11 |
12 | ```json
13 | {
14 | "version": 1,
15 | "settings": {
16 | "typography": {
17 | "dropCap": false
18 | }
19 | }
20 | }
21 | ```
22 |
23 | This plugin does continue working in WordPress 5.8 but be aware of this alternative solution.
24 |
25 | ## Requirements
26 |
27 | * WordPress 5.5, 5.6, 5.7 or 5.8
28 | * PHP 7.0 or later
29 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "yahnis-elsts/plugin-update-checker": "^4.10",
4 | "collizo4sky/persist-admin-notices-dismissal": "^1.4"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/composer.lock:
--------------------------------------------------------------------------------
1 | {
2 | "_readme": [
3 | "This file locks the dependencies of your project to a known state",
4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 | "This file is @generated automatically"
6 | ],
7 | "content-hash": "37add0659bd1a12072a9c2bc0b21d371",
8 | "packages": [
9 | {
10 | "name": "collizo4sky/persist-admin-notices-dismissal",
11 | "version": "1.4.4",
12 | "source": {
13 | "type": "git",
14 | "url": "https://github.com/w3guy/persist-admin-notices-dismissal.git",
15 | "reference": "900739eb6b0ec0210465f5983a6d4e0e420289e4"
16 | },
17 | "dist": {
18 | "type": "zip",
19 | "url": "https://api.github.com/repos/w3guy/persist-admin-notices-dismissal/zipball/900739eb6b0ec0210465f5983a6d4e0e420289e4",
20 | "reference": "900739eb6b0ec0210465f5983a6d4e0e420289e4",
21 | "shasum": ""
22 | },
23 | "require": {
24 | "php": ">=5.4"
25 | },
26 | "type": "library",
27 | "autoload": {
28 | "classmap": [
29 | "persist-admin-notices-dismissal.php"
30 | ]
31 | },
32 | "notification-url": "https://packagist.org/downloads/",
33 | "license": [
34 | "GPL-3.0-or-later"
35 | ],
36 | "authors": [
37 | {
38 | "name": "Collins Agbonghama",
39 | "email": "me@w3guy.com",
40 | "role": "developer"
41 | }
42 | ],
43 | "description": "Simple library to persist dismissal of admin notices across pages in WordPress dashboard.",
44 | "support": {
45 | "issues": "https://github.com/w3guy/persist-admin-notices-dismissal/issues",
46 | "source": "https://github.com/w3guy/persist-admin-notices-dismissal"
47 | },
48 | "time": "2020-12-31T17:12:37+00:00"
49 | },
50 | {
51 | "name": "yahnis-elsts/plugin-update-checker",
52 | "version": "v4.10",
53 | "source": {
54 | "type": "git",
55 | "url": "https://github.com/YahnisElsts/plugin-update-checker.git",
56 | "reference": "0edd15f67822464af8a23285ce367b30d515a855"
57 | },
58 | "dist": {
59 | "type": "zip",
60 | "url": "https://api.github.com/repos/YahnisElsts/plugin-update-checker/zipball/0edd15f67822464af8a23285ce367b30d515a855",
61 | "reference": "0edd15f67822464af8a23285ce367b30d515a855",
62 | "shasum": ""
63 | },
64 | "require": {
65 | "ext-json": "*",
66 | "php": ">=5.2.0"
67 | },
68 | "type": "library",
69 | "autoload": {
70 | "files": [
71 | "load-v4p10.php"
72 | ]
73 | },
74 | "notification-url": "https://packagist.org/downloads/",
75 | "license": [
76 | "MIT"
77 | ],
78 | "authors": [
79 | {
80 | "name": "Yahnis Elsts",
81 | "email": "whiteshadow@w-shadow.com",
82 | "homepage": "http://w-shadow.com/",
83 | "role": "Developer"
84 | }
85 | ],
86 | "description": "A custom update checker for WordPress plugins and themes. Useful if you can't host your plugin in the official WP repository but still want it to support automatic updates.",
87 | "homepage": "https://github.com/YahnisElsts/plugin-update-checker/",
88 | "keywords": [
89 | "automatic updates",
90 | "plugin updates",
91 | "theme updates",
92 | "wordpress"
93 | ],
94 | "time": "2020-08-21T11:36:45+00:00"
95 | }
96 | ],
97 | "packages-dev": [],
98 | "aliases": [],
99 | "minimum-stability": "stable",
100 | "stability-flags": [],
101 | "prefer-stable": false,
102 | "prefer-lowest": false,
103 | "platform": [],
104 | "platform-dev": [],
105 | "plugin-api-version": "2.1.0"
106 | }
107 |
--------------------------------------------------------------------------------
/readme.txt:
--------------------------------------------------------------------------------
1 | # Disable Drop Cap
2 | Requires at least: 5.5
3 | Tested up to: 5.8
4 | Requires PHP: 7.0
5 | License: GPLv2 or later
6 | License URI: http://www.gnu.org/licenses/gpl-2.0.html
7 |
8 | Plugin to disable drop cap in Gutenberg editor paragraph block
9 |
10 | ## Description
11 |
12 | Plugin to disable drop cap in Gutenberg editor paragraph block.
13 |
14 | ### Note for WordPress 5.8
15 |
16 | With WordPress 5.8, you can use the new `theme.json` feature to disable drop caps in your theme. Add a `theme.json` with the following content in the root of your theme.
17 |
18 | ```json
19 | {
20 | "version": 1,
21 | "settings": {
22 | "typography": {
23 | "dropCap": false
24 | }
25 | }
26 | }
27 | ```
28 |
29 | This plugin does continue working in WordPress 5.8 but be aware of this alternative solution.
30 |
31 | ## Changelog
32 |
33 | ### 1.4.0 (2021-12-05)
34 | * Feature: Add a notice to encourage people to update to the new version in the plugin directory
35 |
36 | ### 1.3.1 (2021-09-20)
37 | * Fix: Fix deprecation error in WordPress 5.8
38 |
39 | ### 1.3.0 (2021-07-24)
40 | * Feature: WordPress 5.8 support (thanks @adriantoll)
41 |
42 | ### 1.2.1 (2021-03-12)
43 | * Fix: Bump tested up to 5.7
44 | * Fix: Re-organize plugin code to be cleaner
45 | * Fix: Change plugin name to "Disable Drop Cap" everywhere. "Remove Drop Cap" is still used as the plugin slug to ensure backwards compatibility
46 |
47 | ### 1.2.0 (2021-03-11)
48 | * Feature: WordPress 5.7 support
49 | * Fix: Regression in WordPress 5.5
50 |
51 | ### 1.1.0 (2020-12-16)
52 | * Change: Use server side feature registration to disable dropCap instead of JavaScript
53 | * Fix: WordPress 5.6 support
54 |
55 | ### 1.0.0 (2020-09-20)
56 | * Initial release
57 |
--------------------------------------------------------------------------------
/remove-drop-cap.php:
--------------------------------------------------------------------------------
1 | =')) {
28 | add_filter('block_editor_settings_all', 'disable_drop_cap_editor_settings_5_8');
29 | }
30 |
31 | if (
32 | version_compare($wp_version, '5.7', '>=') &&
33 | version_compare($wp_version, '5.8', '<')
34 | ) {
35 | add_filter('block_editor_settings', 'disable_drop_cap_editor_settings_5_7');
36 | }
37 |
38 | if (
39 | version_compare($wp_version, '5.6', '>=') &&
40 | version_compare($wp_version, '5.7', '<')
41 | ) {
42 | add_filter('block_editor_settings', 'disable_drop_cap_editor_settings_5_6');
43 | }
44 |
45 | if (
46 | version_compare($wp_version, '5.5', '>=') &&
47 | version_compare($wp_version, '5.6', '<'))
48 | {
49 | add_action('admin_footer', 'disable_drop_cap_admin_footer');
50 | }
51 | }
52 |
53 | function disable_drop_cap_editor_settings_5_8(array $editor_settings): array {
54 | $editor_settings['__experimentalFeatures']['typography']['dropCap'] = false;
55 | return $editor_settings;
56 | }
57 |
58 | function disable_drop_cap_editor_settings_5_7(array $editor_settings): array {
59 | $editor_settings['__experimentalFeatures']['defaults']['typography']['dropCap'] = false;
60 | return $editor_settings;
61 | }
62 |
63 | function disable_drop_cap_editor_settings_5_6(array $editor_settings): array {
64 | $editor_settings['__experimentalFeatures']['global']['typography']['dropCap'] = false;
65 | return $editor_settings;
66 | }
67 |
68 | function disable_drop_cap_admin_footer() {
69 | echo <<
71 | document.addEventListener("DOMContentLoaded", function () {
72 | var removeDropCap = function(settings, name) {
73 |
74 | if (name !== "core/paragraph") {
75 | return settings;
76 | }
77 | var newSettings = Object.assign({}, settings);
78 | if (
79 | newSettings.supports &&
80 | newSettings.supports.__experimentalFeatures &&
81 | newSettings.supports.__experimentalFeatures.typography &&
82 | newSettings.supports.__experimentalFeatures.typography.dropCap
83 | ) {
84 | newSettings.supports.__experimentalFeatures.typography.dropCap = false;
85 | }
86 | return newSettings;
87 | };
88 | wp.hooks.addFilter(
89 | "blocks.registerBlockType",
90 | "sc/gb/remove-drop-cap",
91 | removeDropCap,
92 | );
93 | });
94 |
95 | HTML;
96 | }
97 |
98 | function disable_drop_cap_update_nag() {
99 | if (!PAnD::is_admin_notice_active('disable-drop-cap-update-nag-7')) {
100 | return;
101 | }
102 |
103 | echo '
';
104 | echo '
Version 1 of Disable Drop Cap is no longer being maintained. Please update to version 2 which is available in the WordPress plugin directory. You can deactivate and remove the old version once you have installed the new version.
';
105 | echo '
';
106 | }
107 |
108 | add_action('admin_notices', 'disable_drop_cap_update_nag');
109 |
110 | add_action('admin_init', ['PAnD', 'init']);
111 |
--------------------------------------------------------------------------------
/vendor/autoload.php:
--------------------------------------------------------------------------------
1 |
29 |
32 |
47 |
50 |
84 |
87 |
96 |
99 | =5.4"
17 | },
18 | "support": {
19 | "issues": "https://github.com/w3guy/persist-admin-notices-dismissal/issues",
20 | "source": "https://github.com/w3guy/persist-admin-notices-dismissal"
21 | },
22 | "autoload": {
23 | "classmap": [
24 | "persist-admin-notices-dismissal.php"
25 | ]
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/collizo4sky/persist-admin-notices-dismissal/dismiss-notice.js:
--------------------------------------------------------------------------------
1 | (function ($) {
2 | //shorthand for ready event.
3 | $(
4 | function () {
5 | $( 'div[data-dismissible] button.notice-dismiss, div[data-dismissible] .dismiss-this' ).on("click",
6 | function (event) {
7 | event.preventDefault();
8 | var $this = $( this );
9 |
10 | var attr_value, option_name, dismissible_length, data;
11 |
12 | attr_value = $this.closest("div[data-dismissible]").attr( 'data-dismissible' ).split( '-' );
13 |
14 | // remove the dismissible length from the attribute value and rejoin the array.
15 | dismissible_length = attr_value.pop();
16 |
17 | option_name = attr_value.join( '-' );
18 |
19 | data = {
20 | 'action': 'dismiss_admin_notice',
21 | 'option_name': option_name,
22 | 'dismissible_length': dismissible_length,
23 | 'nonce': dismissible_notice.nonce
24 | };
25 |
26 | // We can also pass the url value separately from ajaxurl for front end AJAX implementations
27 | $.post( ajaxurl, data );
28 | $this.closest("div[data-dismissible]").hide('slow');
29 | }
30 | );
31 | }
32 | )
33 |
34 | }(jQuery));
35 |
--------------------------------------------------------------------------------
/vendor/collizo4sky/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * This program is free software: you can redistribute it and/or modify
9 | * it under the terms of the GNU General Public License as published by
10 | * the Free Software Foundation, either version 3 of the License, or
11 | * (at your option) any later version.
12 | *
13 | * This program is distributed in the hope that it will be useful,
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | * GNU General Public License for more details.
17 | *
18 | * You should have received a copy of the GNU General Public License
19 | * along with this program. If not, see .
20 | *
21 | * @package Persist Admin notices Dismissal
22 | * @author Collins Agbonghama
23 | * @author Andy Fragen
24 | * @license http://www.gnu.org/licenses GNU General Public License
25 | */
26 |
27 | /**
28 | * Exit if called directly.
29 | */
30 | if ( ! defined( 'ABSPATH' ) ) {
31 | die;
32 | }
33 |
34 | if ( ! class_exists( 'PAnD' ) ) {
35 |
36 | /**
37 | * Class PAnD
38 | */
39 | class PAnD {
40 |
41 | /**
42 | * Init hooks.
43 | */
44 | public static function init() {
45 | add_action( 'admin_enqueue_scripts', array( __CLASS__, 'load_script' ) );
46 | add_action( 'wp_ajax_dismiss_admin_notice', array( __CLASS__, 'dismiss_admin_notice' ) );
47 |
48 | /**
49 | * Filter to activate another filter providing a simpler use case.
50 | *
51 | * @since 1.4.3
52 | *
53 | * @param bool
54 | */
55 | if ( apply_filters( 'pand_theme_loader', false ) ) {
56 | add_filter(
57 | 'pand_dismiss_notice_js_url',
58 | function( $js_url, $composer_path ) {
59 | return get_stylesheet_directory_uri() . $composer_path;
60 | },
61 | 10,
62 | 2
63 | );
64 | }
65 | }
66 |
67 | /**
68 | * Enqueue javascript and variables.
69 | */
70 | public static function load_script() {
71 |
72 | if ( is_customize_preview() ) {
73 | return;
74 | }
75 |
76 | $js_url = plugins_url( 'dismiss-notice.js', __FILE__ );
77 | $composer_path = '/vendor/collizo4sky/persist-admin-notices-dismissal/dismiss-notice.js';
78 |
79 | /**
80 | * Filter dismiss-notice.js URL.
81 | *
82 | * @since 1.4.3
83 | *
84 | * @param string $js_url URL to the Javascript file.
85 | * @param string $composer_path Relative path of Javascript file from composer install.
86 | */
87 | $js_url = apply_filters( 'pand_dismiss_notice_js_url', $js_url, $composer_path );
88 | wp_enqueue_script(
89 | 'dismissible-notices',
90 | $js_url,
91 | array( 'jquery', 'common' ),
92 | false,
93 | true
94 | );
95 |
96 | wp_localize_script(
97 | 'dismissible-notices',
98 | 'dismissible_notice',
99 | array(
100 | 'nonce' => wp_create_nonce( 'dismissible-notice' ),
101 | )
102 | );
103 | }
104 |
105 | /**
106 | * Handles Ajax request to persist notices dismissal.
107 | * Uses check_ajax_referer to verify nonce.
108 | */
109 | public static function dismiss_admin_notice() {
110 | $option_name = sanitize_text_field( $_POST['option_name'] );
111 | $dismissible_length = sanitize_text_field( $_POST['dismissible_length'] );
112 |
113 | if ( 'forever' != $dismissible_length ) {
114 | // If $dismissible_length is not an integer default to 1
115 | $dismissible_length = ( 0 == absint( $dismissible_length ) ) ? 1 : $dismissible_length;
116 | $dismissible_length = strtotime( absint( $dismissible_length ) . ' days' );
117 | }
118 |
119 | check_ajax_referer( 'dismissible-notice', 'nonce' );
120 | self::set_admin_notice_cache( $option_name, $dismissible_length );
121 | wp_die();
122 | }
123 |
124 | /**
125 | * Is admin notice active?
126 | *
127 | * @param string $arg data-dismissible content of notice.
128 | *
129 | * @return bool
130 | */
131 | public static function is_admin_notice_active( $arg ) {
132 | $array = explode( '-', $arg );
133 | $length = array_pop( $array );
134 | $option_name = implode( '-', $array );
135 | $db_record = self::get_admin_notice_cache( $option_name );
136 |
137 | if ( 'forever' == $db_record ) {
138 | return false;
139 | } elseif ( absint( $db_record ) >= time() ) {
140 | return false;
141 | } else {
142 | return true;
143 | }
144 | }
145 |
146 | /**
147 | * Returns admin notice cached timeout.
148 | *
149 | * @access public
150 | *
151 | * @param string|bool $id admin notice name or false.
152 | *
153 | * @return array|bool The timeout. False if expired.
154 | */
155 | public static function get_admin_notice_cache( $id = false ) {
156 | if ( ! $id ) {
157 | return false;
158 | }
159 | $cache_key = 'pand-' . md5( $id );
160 | $timeout = get_site_option( $cache_key );
161 | $timeout = 'forever' === $timeout ? time() + 60 : $timeout;
162 |
163 | if ( empty( $timeout ) || time() > $timeout ) {
164 | return false;
165 | }
166 |
167 | return $timeout;
168 | }
169 |
170 | /**
171 | * Sets admin notice timeout in site option.
172 | *
173 | * @access public
174 | *
175 | * @param string $id Data Identifier.
176 | * @param string|bool $timeout Timeout for admin notice.
177 | *
178 | * @return bool
179 | */
180 | public static function set_admin_notice_cache( $id, $timeout ) {
181 | $cache_key = 'pand-' . md5( $id );
182 | update_site_option( $cache_key, $timeout );
183 |
184 | return true;
185 | }
186 |
187 | }
188 |
189 | }
190 |
--------------------------------------------------------------------------------
/vendor/composer/LICENSE:
--------------------------------------------------------------------------------
1 |
2 | Copyright (c) Nils Adermann, Jordi Boggiano
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is furnished
9 | to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all
12 | copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
22 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_classmap.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/composer/InstalledVersions.php',
10 | 'PAnD' => $vendorDir . '/collizo4sky/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php',
11 | );
12 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_files.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/yahnis-elsts/plugin-update-checker/load-v4p10.php',
10 | );
11 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_namespaces.php:
--------------------------------------------------------------------------------
1 | = 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32 | if ($useStaticLoader) {
33 | require __DIR__ . '/autoload_static.php';
34 |
35 | call_user_func(\Composer\Autoload\ComposerStaticInit64d54a85282dbc7f92303909c59370ac::getInitializer($loader));
36 | } else {
37 | $map = require __DIR__ . '/autoload_namespaces.php';
38 | foreach ($map as $namespace => $path) {
39 | $loader->set($namespace, $path);
40 | }
41 |
42 | $map = require __DIR__ . '/autoload_psr4.php';
43 | foreach ($map as $namespace => $path) {
44 | $loader->setPsr4($namespace, $path);
45 | }
46 |
47 | $classMap = require __DIR__ . '/autoload_classmap.php';
48 | if ($classMap) {
49 | $loader->addClassMap($classMap);
50 | }
51 | }
52 |
53 | $loader->register(true);
54 |
55 | if ($useStaticLoader) {
56 | $includeFiles = Composer\Autoload\ComposerStaticInit64d54a85282dbc7f92303909c59370ac::$files;
57 | } else {
58 | $includeFiles = require __DIR__ . '/autoload_files.php';
59 | }
60 | foreach ($includeFiles as $fileIdentifier => $file) {
61 | composerRequire64d54a85282dbc7f92303909c59370ac($fileIdentifier, $file);
62 | }
63 |
64 | return $loader;
65 | }
66 | }
67 |
68 | function composerRequire64d54a85282dbc7f92303909c59370ac($fileIdentifier, $file)
69 | {
70 | if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71 | require $file;
72 |
73 | $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_static.php:
--------------------------------------------------------------------------------
1 | __DIR__ . '/..' . '/yahnis-elsts/plugin-update-checker/load-v4p10.php',
11 | );
12 |
13 | public static $classMap = array (
14 | 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
15 | 'PAnD' => __DIR__ . '/..' . '/collizo4sky/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php',
16 | );
17 |
18 | public static function getInitializer(ClassLoader $loader)
19 | {
20 | return \Closure::bind(function () use ($loader) {
21 | $loader->classMap = ComposerStaticInit64d54a85282dbc7f92303909c59370ac::$classMap;
22 |
23 | }, null, ClassLoader::class);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/composer/installed.json:
--------------------------------------------------------------------------------
1 | {
2 | "packages": [
3 | {
4 | "name": "collizo4sky/persist-admin-notices-dismissal",
5 | "version": "1.4.4",
6 | "version_normalized": "1.4.4.0",
7 | "source": {
8 | "type": "git",
9 | "url": "https://github.com/w3guy/persist-admin-notices-dismissal.git",
10 | "reference": "900739eb6b0ec0210465f5983a6d4e0e420289e4"
11 | },
12 | "dist": {
13 | "type": "zip",
14 | "url": "https://api.github.com/repos/w3guy/persist-admin-notices-dismissal/zipball/900739eb6b0ec0210465f5983a6d4e0e420289e4",
15 | "reference": "900739eb6b0ec0210465f5983a6d4e0e420289e4",
16 | "shasum": ""
17 | },
18 | "require": {
19 | "php": ">=5.4"
20 | },
21 | "time": "2020-12-31T17:12:37+00:00",
22 | "type": "library",
23 | "installation-source": "dist",
24 | "autoload": {
25 | "classmap": [
26 | "persist-admin-notices-dismissal.php"
27 | ]
28 | },
29 | "notification-url": "https://packagist.org/downloads/",
30 | "license": [
31 | "GPL-3.0-or-later"
32 | ],
33 | "authors": [
34 | {
35 | "name": "Collins Agbonghama",
36 | "email": "me@w3guy.com",
37 | "role": "developer"
38 | }
39 | ],
40 | "description": "Simple library to persist dismissal of admin notices across pages in WordPress dashboard.",
41 | "support": {
42 | "issues": "https://github.com/w3guy/persist-admin-notices-dismissal/issues",
43 | "source": "https://github.com/w3guy/persist-admin-notices-dismissal"
44 | },
45 | "install-path": "../collizo4sky/persist-admin-notices-dismissal"
46 | },
47 | {
48 | "name": "yahnis-elsts/plugin-update-checker",
49 | "version": "v4.10",
50 | "version_normalized": "4.10.0.0",
51 | "source": {
52 | "type": "git",
53 | "url": "https://github.com/YahnisElsts/plugin-update-checker.git",
54 | "reference": "0edd15f67822464af8a23285ce367b30d515a855"
55 | },
56 | "dist": {
57 | "type": "zip",
58 | "url": "https://api.github.com/repos/YahnisElsts/plugin-update-checker/zipball/0edd15f67822464af8a23285ce367b30d515a855",
59 | "reference": "0edd15f67822464af8a23285ce367b30d515a855",
60 | "shasum": ""
61 | },
62 | "require": {
63 | "ext-json": "*",
64 | "php": ">=5.2.0"
65 | },
66 | "time": "2020-08-21T11:36:45+00:00",
67 | "type": "library",
68 | "installation-source": "dist",
69 | "autoload": {
70 | "files": [
71 | "load-v4p10.php"
72 | ]
73 | },
74 | "notification-url": "https://packagist.org/downloads/",
75 | "license": [
76 | "MIT"
77 | ],
78 | "authors": [
79 | {
80 | "name": "Yahnis Elsts",
81 | "email": "whiteshadow@w-shadow.com",
82 | "homepage": "http://w-shadow.com/",
83 | "role": "Developer"
84 | }
85 | ],
86 | "description": "A custom update checker for WordPress plugins and themes. Useful if you can't host your plugin in the official WP repository but still want it to support automatic updates.",
87 | "homepage": "https://github.com/YahnisElsts/plugin-update-checker/",
88 | "keywords": [
89 | "automatic updates",
90 | "plugin updates",
91 | "theme updates",
92 | "wordpress"
93 | ],
94 | "install-path": "../yahnis-elsts/plugin-update-checker"
95 | }
96 | ],
97 | "dev": true,
98 | "dev-package-names": []
99 | }
100 |
--------------------------------------------------------------------------------
/vendor/composer/installed.php:
--------------------------------------------------------------------------------
1 | array(
3 | 'pretty_version' => 'dev-master',
4 | 'version' => 'dev-master',
5 | 'type' => 'library',
6 | 'install_path' => __DIR__ . '/../../',
7 | 'aliases' => array(),
8 | 'reference' => 'bd28ee694e5e972f8cd20370c19d8ab39fb28e8c',
9 | 'name' => '__root__',
10 | 'dev' => true,
11 | ),
12 | 'versions' => array(
13 | '__root__' => array(
14 | 'pretty_version' => 'dev-master',
15 | 'version' => 'dev-master',
16 | 'type' => 'library',
17 | 'install_path' => __DIR__ . '/../../',
18 | 'aliases' => array(),
19 | 'reference' => 'bd28ee694e5e972f8cd20370c19d8ab39fb28e8c',
20 | 'dev_requirement' => false,
21 | ),
22 | 'collizo4sky/persist-admin-notices-dismissal' => array(
23 | 'pretty_version' => '1.4.4',
24 | 'version' => '1.4.4.0',
25 | 'type' => 'library',
26 | 'install_path' => __DIR__ . '/../collizo4sky/persist-admin-notices-dismissal',
27 | 'aliases' => array(),
28 | 'reference' => '900739eb6b0ec0210465f5983a6d4e0e420289e4',
29 | 'dev_requirement' => false,
30 | ),
31 | 'yahnis-elsts/plugin-update-checker' => array(
32 | 'pretty_version' => 'v4.10',
33 | 'version' => '4.10.0.0',
34 | 'type' => 'library',
35 | 'install_path' => __DIR__ . '/../yahnis-elsts/plugin-update-checker',
36 | 'aliases' => array(),
37 | 'reference' => '0edd15f67822464af8a23285ce367b30d515a855',
38 | 'dev_requirement' => false,
39 | ),
40 | ),
41 | );
42 |
--------------------------------------------------------------------------------
/vendor/composer/platform_check.php:
--------------------------------------------------------------------------------
1 | = 50400)) {
8 | $issues[] = 'Your Composer dependencies require a PHP version ">= 5.4.0". You are running ' . PHP_VERSION . '.';
9 | }
10 |
11 | if ($issues) {
12 | if (!headers_sent()) {
13 | header('HTTP/1.1 500 Internal Server Error');
14 | }
15 | if (!ini_get('display_errors')) {
16 | if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
17 | fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL);
18 | } elseif (!headers_sent()) {
19 | echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL;
20 | }
21 | }
22 | trigger_error(
23 | 'Composer detected issues in your platform: ' . implode(' ', $issues),
24 | E_USER_ERROR
25 | );
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/.editorconfig:
--------------------------------------------------------------------------------
1 | [*]
2 | charset=utf-8
3 | end_of_line=lf
4 | insert_final_newline=false
5 | indent_style=tab
6 | tab_width=4
7 |
8 | [{phpunit.xml.dist,*.jhm,*.xslt,*.xul,*.rng,*.xsl,*.xsd,*.ant,*.tld,*.fxml,*.jrxml,*.xml,*.jnlp,*.wsdl}]
9 | indent_style=space
10 | indent_size=4
11 |
12 | [*.svg]
13 | indent_style=space
14 | indent_size=4
15 |
16 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/.gitignore:
--------------------------------------------------------------------------------
1 | # Created by .ignore support plugin (hsz.mobi)
2 | ### JetBrains template
3 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
4 | # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
5 |
6 | # The entire IDEA/PhpStorm directory
7 | .idea/
8 |
9 | # CMake
10 | cmake-build-*/
11 |
12 | # Mongo Explorer plugin
13 | .idea/**/mongoSettings.xml
14 |
15 | # File-based project format
16 | *.iws
17 |
18 | # IntelliJ
19 | out/
20 |
21 | # mpeltonen/sbt-idea plugin
22 | .idea_modules/
23 |
24 | # JIRA plugin
25 | atlassian-ide-plugin.xml
26 |
27 | # Cursive Clojure plugin
28 | .idea/replstate.xml
29 |
30 | # Crashlytics plugin (for Android Studio and IntelliJ)
31 | com_crashlytics_export_strings.xml
32 | crashlytics.properties
33 | crashlytics-build.properties
34 | fabric.properties
35 |
36 | # Editor-based Rest Client
37 | .idea/httpRequests
38 |
39 | # Android studio 3.1+ serialized cache file
40 | .idea/caches/build_file_checksums.ser
41 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4/Factory.php:
--------------------------------------------------------------------------------
1 | rootDir = dirname(__FILE__) . '/';
14 | $nameParts = explode('_', __CLASS__, 3);
15 | $this->prefix = $nameParts[0] . '_' . $nameParts[1] . '_';
16 |
17 | $this->libraryDir = $this->rootDir . '../..';
18 | if ( !self::isPhar() ) {
19 | $this->libraryDir = realpath($this->libraryDir);
20 | }
21 | $this->libraryDir = $this->libraryDir . '/';
22 |
23 | $this->staticMap = array(
24 | 'PucReadmeParser' => 'vendor/PucReadmeParser.php',
25 | 'Parsedown' => 'vendor/Parsedown.php',
26 | 'Puc_v4_Factory' => 'Puc/v4/Factory.php',
27 | );
28 |
29 | spl_autoload_register(array($this, 'autoload'));
30 | }
31 |
32 | /**
33 | * Determine if this file is running as part of a Phar archive.
34 | *
35 | * @return bool
36 | */
37 | private static function isPhar() {
38 | //Check if the current file path starts with "phar://".
39 | static $pharProtocol = 'phar://';
40 | return (substr(__FILE__, 0, strlen($pharProtocol)) === $pharProtocol);
41 | }
42 |
43 | public function autoload($className) {
44 | if ( isset($this->staticMap[$className]) && file_exists($this->libraryDir . $this->staticMap[$className]) ) {
45 | /** @noinspection PhpIncludeInspection */
46 | include ($this->libraryDir . $this->staticMap[$className]);
47 | return;
48 | }
49 |
50 | if (strpos($className, $this->prefix) === 0) {
51 | $path = substr($className, strlen($this->prefix));
52 | $path = str_replace('_', '/', $path);
53 | $path = $this->rootDir . $path . '.php';
54 |
55 | if (file_exists($path)) {
56 | /** @noinspection PhpIncludeInspection */
57 | include $path;
58 | }
59 | }
60 | }
61 | }
62 |
63 | endif;
64 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/DebugBar/Extension.php:
--------------------------------------------------------------------------------
1 | updateChecker = $updateChecker;
13 | if ( isset($panelClass) ) {
14 | $this->panelClass = $panelClass;
15 | }
16 |
17 | add_filter('debug_bar_panels', array($this, 'addDebugBarPanel'));
18 | add_action('debug_bar_enqueue_scripts', array($this, 'enqueuePanelDependencies'));
19 |
20 | add_action('wp_ajax_puc_v4_debug_check_now', array($this, 'ajaxCheckNow'));
21 | }
22 |
23 | /**
24 | * Register the PUC Debug Bar panel.
25 | *
26 | * @param array $panels
27 | * @return array
28 | */
29 | public function addDebugBarPanel($panels) {
30 | if ( $this->updateChecker->userCanInstallUpdates() ) {
31 | $panels[] = new $this->panelClass($this->updateChecker);
32 | }
33 | return $panels;
34 | }
35 |
36 | /**
37 | * Enqueue our Debug Bar scripts and styles.
38 | */
39 | public function enqueuePanelDependencies() {
40 | wp_enqueue_style(
41 | 'puc-debug-bar-style-v4',
42 | $this->getLibraryUrl("/css/puc-debug-bar.css"),
43 | array('debug-bar'),
44 | '20171124'
45 | );
46 |
47 | wp_enqueue_script(
48 | 'puc-debug-bar-js-v4',
49 | $this->getLibraryUrl("/js/debug-bar.js"),
50 | array('jquery'),
51 | '20170516'
52 | );
53 | }
54 |
55 | /**
56 | * Run an update check and output the result. Useful for making sure that
57 | * the update checking process works as expected.
58 | */
59 | public function ajaxCheckNow() {
60 | if ( $_POST['uid'] !== $this->updateChecker->getUniqueName('uid') ) {
61 | return;
62 | }
63 | $this->preAjaxRequest();
64 | $update = $this->updateChecker->checkForUpdates();
65 | if ( $update !== null ) {
66 | echo "An update is available:";
67 | echo '', htmlentities(print_r($update, true)), '
';
68 | } else {
69 | echo 'No updates found.';
70 | }
71 |
72 | $errors = $this->updateChecker->getLastRequestApiErrors();
73 | if ( !empty($errors) ) {
74 | printf('The update checker encountered %d API error%s.
', count($errors), (count($errors) > 1) ? 's' : '');
75 |
76 | foreach (array_values($errors) as $num => $item) {
77 | $wpError = $item['error'];
78 | /** @var WP_Error $wpError */
79 | printf('%d) %s
', $num + 1, esc_html($wpError->get_error_message()));
80 |
81 | echo '';
82 | printf('- Error code:
%s
', esc_html($wpError->get_error_code()));
83 |
84 | if ( isset($item['url']) ) {
85 | printf('- Requested URL:
%s
', esc_html($item['url']));
86 | }
87 |
88 | if ( isset($item['httpResponse']) ) {
89 | if ( is_wp_error($item['httpResponse']) ) {
90 | $httpError = $item['httpResponse'];
91 | /** @var WP_Error $httpError */
92 | printf(
93 | '- WordPress HTTP API error:
- %s (
%s
) ',
94 | esc_html($httpError->get_error_message()),
95 | esc_html($httpError->get_error_code())
96 | );
97 | } else {
98 | //Status code.
99 | printf(
100 | '- HTTP status:
%d %s
',
101 | wp_remote_retrieve_response_code($item['httpResponse']),
102 | wp_remote_retrieve_response_message($item['httpResponse'])
103 | );
104 |
105 | //Headers.
106 | echo '- Response headers:
';
107 | foreach (wp_remote_retrieve_headers($item['httpResponse']) as $name => $value) {
108 | printf("%s: %s\n", esc_html($name), esc_html($value));
109 | }
110 | echo '
';
111 |
112 | //Body.
113 | $body = wp_remote_retrieve_body($item['httpResponse']);
114 | if ( $body === '' ) {
115 | $body = '(Empty response.)';
116 | } else if ( strlen($body) > self::RESPONSE_BODY_LENGTH_LIMIT ) {
117 | $length = strlen($body);
118 | $body = substr($body, 0, self::RESPONSE_BODY_LENGTH_LIMIT)
119 | . sprintf("\n(Long string truncated. Total length: %d bytes.)", $length);
120 | }
121 |
122 | printf('- Response body:
%s
', esc_html($body));
123 | }
124 | }
125 | echo '';
126 | }
127 | }
128 |
129 | exit;
130 | }
131 |
132 | /**
133 | * Check access permissions and enable error display (for debugging).
134 | */
135 | protected function preAjaxRequest() {
136 | if ( !$this->updateChecker->userCanInstallUpdates() ) {
137 | die('Access denied');
138 | }
139 | check_ajax_referer('puc-ajax');
140 |
141 | error_reporting(E_ALL);
142 | @ini_set('display_errors', 'On');
143 | }
144 |
145 | /**
146 | * Remove hooks that were added by this extension.
147 | */
148 | public function removeHooks() {
149 | remove_filter('debug_bar_panels', array($this, 'addDebugBarPanel'));
150 | remove_action('debug_bar_enqueue_scripts', array($this, 'enqueuePanelDependencies'));
151 | remove_action('wp_ajax_puc_v4_debug_check_now', array($this, 'ajaxCheckNow'));
152 | }
153 |
154 | /**
155 | * @param string $filePath
156 | * @return string
157 | */
158 | private function getLibraryUrl($filePath) {
159 | $absolutePath = realpath(dirname(__FILE__) . '/../../../' . ltrim($filePath, '/'));
160 |
161 | //Where is the library located inside the WordPress directory structure?
162 | $absolutePath = Puc_v4p10_Factory::normalizePath($absolutePath);
163 |
164 | $pluginDir = Puc_v4p10_Factory::normalizePath(WP_PLUGIN_DIR);
165 | $muPluginDir = Puc_v4p10_Factory::normalizePath(WPMU_PLUGIN_DIR);
166 | $themeDir = Puc_v4p10_Factory::normalizePath(get_theme_root());
167 |
168 | if ( (strpos($absolutePath, $pluginDir) === 0) || (strpos($absolutePath, $muPluginDir) === 0) ) {
169 | //It's part of a plugin.
170 | return plugins_url(basename($absolutePath), $absolutePath);
171 | } else if ( strpos($absolutePath, $themeDir) === 0 ) {
172 | //It's part of a theme.
173 | $relativePath = substr($absolutePath, strlen($themeDir) + 1);
174 | $template = substr($relativePath, 0, strpos($relativePath, '/'));
175 | $baseUrl = get_theme_root_uri($template);
176 |
177 | if ( !empty($baseUrl) && $relativePath ) {
178 | return $baseUrl . '/' . $relativePath;
179 | }
180 | }
181 |
182 | return '';
183 | }
184 | }
185 |
186 | endif;
187 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/DebugBar/Panel.php:
--------------------------------------------------------------------------------
1 | ';
10 |
11 | public function __construct($updateChecker) {
12 | $this->updateChecker = $updateChecker;
13 | $title = sprintf(
14 | '',
15 | esc_attr($this->updateChecker->getUniqueName('uid')),
16 | $this->updateChecker->slug
17 | );
18 | parent::__construct($title);
19 | }
20 |
21 | public function render() {
22 | printf(
23 | '',
24 | esc_attr($this->updateChecker->getUniqueName('debug-bar-panel')),
25 | esc_attr($this->updateChecker->slug),
26 | esc_attr($this->updateChecker->getUniqueName('uid')),
27 | esc_attr(wp_create_nonce('puc-ajax'))
28 | );
29 |
30 | $this->displayConfiguration();
31 | $this->displayStatus();
32 | $this->displayCurrentUpdate();
33 |
34 | echo '
';
35 | }
36 |
37 | private function displayConfiguration() {
38 | echo 'Configuration
';
39 | echo '';
40 | $this->displayConfigHeader();
41 | $this->row('Slug', htmlentities($this->updateChecker->slug));
42 | $this->row('DB option', htmlentities($this->updateChecker->optionName));
43 |
44 | $requestInfoButton = $this->getMetadataButton();
45 | $this->row('Metadata URL', htmlentities($this->updateChecker->metadataUrl) . ' ' . $requestInfoButton . $this->responseBox);
46 |
47 | $scheduler = $this->updateChecker->scheduler;
48 | if ( $scheduler->checkPeriod > 0 ) {
49 | $this->row('Automatic checks', 'Every ' . $scheduler->checkPeriod . ' hours');
50 | } else {
51 | $this->row('Automatic checks', 'Disabled');
52 | }
53 |
54 | if ( isset($scheduler->throttleRedundantChecks) ) {
55 | if ( $scheduler->throttleRedundantChecks && ($scheduler->checkPeriod > 0) ) {
56 | $this->row(
57 | 'Throttling',
58 | sprintf(
59 | 'Enabled. If an update is already available, check for updates every %1$d hours instead of every %2$d hours.',
60 | $scheduler->throttledCheckPeriod,
61 | $scheduler->checkPeriod
62 | )
63 | );
64 | } else {
65 | $this->row('Throttling', 'Disabled');
66 | }
67 | }
68 |
69 | $this->updateChecker->onDisplayConfiguration($this);
70 |
71 | echo '
';
72 | }
73 |
74 | protected function displayConfigHeader() {
75 | //Do nothing. This should be implemented in subclasses.
76 | }
77 |
78 | protected function getMetadataButton() {
79 | return '';
80 | }
81 |
82 | private function displayStatus() {
83 | echo 'Status
';
84 | echo '';
85 | $state = $this->updateChecker->getUpdateState();
86 | $checkNowButton = '';
87 | if ( function_exists('get_submit_button') ) {
88 | $checkNowButton = get_submit_button(
89 | 'Check Now',
90 | 'secondary',
91 | 'puc-check-now-button',
92 | false,
93 | array('id' => $this->updateChecker->getUniqueName('check-now-button'))
94 | );
95 | }
96 |
97 | if ( $state->getLastCheck() > 0 ) {
98 | $this->row('Last check', $this->formatTimeWithDelta($state->getLastCheck()) . ' ' . $checkNowButton . $this->responseBox);
99 | } else {
100 | $this->row('Last check', 'Never');
101 | }
102 |
103 | $nextCheck = wp_next_scheduled($this->updateChecker->scheduler->getCronHookName());
104 | $this->row('Next automatic check', $this->formatTimeWithDelta($nextCheck));
105 |
106 | if ( $state->getCheckedVersion() !== '' ) {
107 | $this->row('Checked version', htmlentities($state->getCheckedVersion()));
108 | $this->row('Cached update', $state->getUpdate());
109 | }
110 | $this->row('Update checker class', htmlentities(get_class($this->updateChecker)));
111 | echo '
';
112 | }
113 |
114 | private function displayCurrentUpdate() {
115 | $update = $this->updateChecker->getUpdate();
116 | if ( $update !== null ) {
117 | echo 'An Update Is Available
';
118 | echo '';
119 | $fields = $this->getUpdateFields();
120 | foreach($fields as $field) {
121 | if ( property_exists($update, $field) ) {
122 | $this->row(ucwords(str_replace('_', ' ', $field)), htmlentities($update->$field));
123 | }
124 | }
125 | echo '
';
126 | } else {
127 | echo 'No updates currently available
';
128 | }
129 | }
130 |
131 | protected function getUpdateFields() {
132 | return array('version', 'download_url', 'slug',);
133 | }
134 |
135 | private function formatTimeWithDelta($unixTime) {
136 | if ( empty($unixTime) ) {
137 | return 'Never';
138 | }
139 |
140 | $delta = time() - $unixTime;
141 | $result = human_time_diff(time(), $unixTime);
142 | if ( $delta < 0 ) {
143 | $result = 'after ' . $result;
144 | } else {
145 | $result = $result . ' ago';
146 | }
147 | $result .= ' (' . $this->formatTimestamp($unixTime) . ')';
148 | return $result;
149 | }
150 |
151 | private function formatTimestamp($unixTime) {
152 | return gmdate('Y-m-d H:i:s', $unixTime + (get_option('gmt_offset') * 3600));
153 | }
154 |
155 | public function row($name, $value) {
156 | if ( is_object($value) || is_array($value) ) {
157 | $value = '' . htmlentities(print_r($value, true)) . '
';
158 | } else if ($value === null) {
159 | $value = 'null
';
160 | }
161 | printf('%1$s | %2$s |
', $name, $value);
162 | }
163 | }
164 |
165 | endif;
166 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/DebugBar/PluginExtension.php:
--------------------------------------------------------------------------------
1 | updateChecker->getUniqueName('uid') ) {
19 | return;
20 | }
21 | $this->preAjaxRequest();
22 | $info = $this->updateChecker->requestInfo();
23 | if ( $info !== null ) {
24 | echo 'Successfully retrieved plugin info from the metadata URL:';
25 | echo '', htmlentities(print_r($info, true)), '
';
26 | } else {
27 | echo 'Failed to retrieve plugin info from the metadata URL.';
28 | }
29 | exit;
30 | }
31 | }
32 |
33 | endif;
34 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/DebugBar/PluginPanel.php:
--------------------------------------------------------------------------------
1 | row('Plugin file', htmlentities($this->updateChecker->pluginFile));
13 | parent::displayConfigHeader();
14 | }
15 |
16 | protected function getMetadataButton() {
17 | $requestInfoButton = '';
18 | if ( function_exists('get_submit_button') ) {
19 | $requestInfoButton = get_submit_button(
20 | 'Request Info',
21 | 'secondary',
22 | 'puc-request-info-button',
23 | false,
24 | array('id' => $this->updateChecker->getUniqueName('request-info-button'))
25 | );
26 | }
27 | return $requestInfoButton;
28 | }
29 |
30 | protected function getUpdateFields() {
31 | return array_merge(
32 | parent::getUpdateFields(),
33 | array('homepage', 'upgrade_notice', 'tested',)
34 | );
35 | }
36 | }
37 |
38 | endif;
39 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/DebugBar/ThemePanel.php:
--------------------------------------------------------------------------------
1 | row('Theme directory', htmlentities($this->updateChecker->directoryName));
13 | parent::displayConfigHeader();
14 | }
15 |
16 | protected function getUpdateFields() {
17 | return array_merge(parent::getUpdateFields(), array('details_url'));
18 | }
19 | }
20 |
21 | endif;
22 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/InstalledPackage.php:
--------------------------------------------------------------------------------
1 | updateChecker = $updateChecker;
18 | }
19 |
20 | /**
21 | * Get the currently installed version of the plugin or theme.
22 | *
23 | * @return string|null Version number.
24 | */
25 | abstract public function getInstalledVersion();
26 |
27 | /**
28 | * Get the full path of the plugin or theme directory (without a trailing slash).
29 | *
30 | * @return string
31 | */
32 | abstract public function getAbsoluteDirectoryPath();
33 |
34 | /**
35 | * Check whether a regular file exists in the package's directory.
36 | *
37 | * @param string $relativeFileName File name relative to the package directory.
38 | * @return bool
39 | */
40 | public function fileExists($relativeFileName) {
41 | return is_file(
42 | $this->getAbsoluteDirectoryPath()
43 | . DIRECTORY_SEPARATOR
44 | . ltrim($relativeFileName, '/\\')
45 | );
46 | }
47 |
48 | /* -------------------------------------------------------------------
49 | * File header parsing
50 | * -------------------------------------------------------------------
51 | */
52 |
53 | /**
54 | * Parse plugin or theme metadata from the header comment.
55 | *
56 | * This is basically a simplified version of the get_file_data() function from /wp-includes/functions.php.
57 | * It's intended as a utility for subclasses that detect updates by parsing files in a VCS.
58 | *
59 | * @param string|null $content File contents.
60 | * @return string[]
61 | */
62 | public function getFileHeader($content) {
63 | $content = (string)$content;
64 |
65 | //WordPress only looks at the first 8 KiB of the file, so we do the same.
66 | $content = substr($content, 0, 8192);
67 | //Normalize line endings.
68 | $content = str_replace("\r", "\n", $content);
69 |
70 | $headers = $this->getHeaderNames();
71 | $results = array();
72 | foreach ($headers as $field => $name) {
73 | $success = preg_match('/^[ \t\/*#@]*' . preg_quote($name, '/') . ':(.*)$/mi', $content, $matches);
74 |
75 | if ( ($success === 1) && $matches[1] ) {
76 | $value = $matches[1];
77 | if ( function_exists('_cleanup_header_comment') ) {
78 | $value = _cleanup_header_comment($value);
79 | }
80 | $results[$field] = $value;
81 | } else {
82 | $results[$field] = '';
83 | }
84 | }
85 |
86 | return $results;
87 | }
88 |
89 | /**
90 | * @return array Format: ['HeaderKey' => 'Header Name']
91 | */
92 | abstract protected function getHeaderNames();
93 |
94 | /**
95 | * Get the value of a specific plugin or theme header.
96 | *
97 | * @param string $headerName
98 | * @return string Either the value of the header, or an empty string if the header doesn't exist.
99 | */
100 | abstract public function getHeaderValue($headerName);
101 |
102 | }
103 | endif;
104 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Metadata.php:
--------------------------------------------------------------------------------
1 | validateMetadata($apiResponse);
40 | if ( is_wp_error($valid) ){
41 | do_action('puc_api_error', $valid);
42 | trigger_error($valid->get_error_message(), E_USER_NOTICE);
43 | return false;
44 | }
45 |
46 | foreach(get_object_vars($apiResponse) as $key => $value){
47 | $target->$key = $value;
48 | }
49 |
50 | return true;
51 | }
52 |
53 | /**
54 | * No validation by default! Subclasses should check that the required fields are present.
55 | *
56 | * @param StdClass $apiResponse
57 | * @return bool|WP_Error
58 | */
59 | protected function validateMetadata(/** @noinspection PhpUnusedParameterInspection */ $apiResponse) {
60 | return true;
61 | }
62 |
63 | /**
64 | * Create a new instance by copying the necessary fields from another object.
65 | *
66 | * @abstract
67 | * @param StdClass|self $object The source object.
68 | * @return self The new copy.
69 | */
70 | public static function fromObject(/** @noinspection PhpUnusedParameterInspection */ $object) {
71 | throw new LogicException('The ' . __METHOD__ . ' method must be implemented by subclasses');
72 | }
73 |
74 | /**
75 | * Create an instance of StdClass that can later be converted back to an
76 | * update or info container. Useful for serialization and caching, as it
77 | * avoids the "incomplete object" problem if the cached value is loaded
78 | * before this class.
79 | *
80 | * @return StdClass
81 | */
82 | public function toStdClass() {
83 | $object = new stdClass();
84 | $this->copyFields($this, $object);
85 | return $object;
86 | }
87 |
88 | /**
89 | * Transform the metadata into the format used by WordPress core.
90 | *
91 | * @return object
92 | */
93 | abstract public function toWpFormat();
94 |
95 | /**
96 | * Copy known fields from one object to another.
97 | *
98 | * @param StdClass|self $from
99 | * @param StdClass|self $to
100 | */
101 | protected function copyFields($from, $to) {
102 | $fields = $this->getFieldNames();
103 |
104 | if ( property_exists($from, 'slug') && !empty($from->slug) ) {
105 | //Let plugins add extra fields without having to create subclasses.
106 | $fields = apply_filters($this->getPrefixedFilter('retain_fields') . '-' . $from->slug, $fields);
107 | }
108 |
109 | foreach ($fields as $field) {
110 | if ( property_exists($from, $field) ) {
111 | $to->$field = $from->$field;
112 | }
113 | }
114 | }
115 |
116 | /**
117 | * @return string[]
118 | */
119 | protected function getFieldNames() {
120 | return array();
121 | }
122 |
123 | /**
124 | * @param string $tag
125 | * @return string
126 | */
127 | protected function getPrefixedFilter($tag) {
128 | return 'puc_' . $tag;
129 | }
130 | }
131 |
132 | endif;
133 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/OAuthSignature.php:
--------------------------------------------------------------------------------
1 | consumerKey = $consumerKey;
14 | $this->consumerSecret = $consumerSecret;
15 | }
16 |
17 | /**
18 | * Sign a URL using OAuth 1.0.
19 | *
20 | * @param string $url The URL to be signed. It may contain query parameters.
21 | * @param string $method HTTP method such as "GET", "POST" and so on.
22 | * @return string The signed URL.
23 | */
24 | public function sign($url, $method = 'GET') {
25 | $parameters = array();
26 |
27 | //Parse query parameters.
28 | $query = parse_url($url, PHP_URL_QUERY);
29 | if ( !empty($query) ) {
30 | parse_str($query, $parsedParams);
31 | if ( is_array($parameters) ) {
32 | $parameters = $parsedParams;
33 | }
34 | //Remove the query string from the URL. We'll replace it later.
35 | $url = substr($url, 0, strpos($url, '?'));
36 | }
37 |
38 | $parameters = array_merge(
39 | $parameters,
40 | array(
41 | 'oauth_consumer_key' => $this->consumerKey,
42 | 'oauth_nonce' => $this->nonce(),
43 | 'oauth_signature_method' => 'HMAC-SHA1',
44 | 'oauth_timestamp' => time(),
45 | 'oauth_version' => '1.0',
46 | )
47 | );
48 | unset($parameters['oauth_signature']);
49 |
50 | //Parameters must be sorted alphabetically before signing.
51 | ksort($parameters);
52 |
53 | //The most complicated part of the request - generating the signature.
54 | //The string to sign contains the HTTP method, the URL path, and all of
55 | //our query parameters. Everything is URL encoded. Then we concatenate
56 | //them with ampersands into a single string to hash.
57 | $encodedVerb = urlencode($method);
58 | $encodedUrl = urlencode($url);
59 | $encodedParams = urlencode(http_build_query($parameters, '', '&'));
60 |
61 | $stringToSign = $encodedVerb . '&' . $encodedUrl . '&' . $encodedParams;
62 |
63 | //Since we only have one OAuth token (the consumer secret) we only have
64 | //to use it as our HMAC key. However, we still have to append an & to it
65 | //as if we were using it with additional tokens.
66 | $secret = urlencode($this->consumerSecret) . '&';
67 |
68 | //The signature is a hash of the consumer key and the base string. Note
69 | //that we have to get the raw output from hash_hmac and base64 encode
70 | //the binary data result.
71 | $parameters['oauth_signature'] = base64_encode(hash_hmac('sha1', $stringToSign, $secret, true));
72 |
73 | return ($url . '?' . http_build_query($parameters));
74 | }
75 |
76 | /**
77 | * Generate a random nonce.
78 | *
79 | * @return string
80 | */
81 | private function nonce() {
82 | $mt = microtime();
83 |
84 | $rand = null;
85 | if ( is_callable('random_bytes') ) {
86 | try {
87 | $rand = random_bytes(16);
88 | } catch (Exception $ex) {
89 | //Fall back to mt_rand (below).
90 | }
91 | }
92 | if ( $rand === null ) {
93 | $rand = mt_rand();
94 | }
95 |
96 | return md5($mt . '_' . $rand);
97 | }
98 | }
99 |
100 | endif;
101 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Plugin/Info.php:
--------------------------------------------------------------------------------
1 | sections = (array)$instance->sections;
59 | $instance->icons = (array)$instance->icons;
60 |
61 | return $instance;
62 | }
63 |
64 | /**
65 | * Very, very basic validation.
66 | *
67 | * @param StdClass $apiResponse
68 | * @return bool|WP_Error
69 | */
70 | protected function validateMetadata($apiResponse) {
71 | if (
72 | !isset($apiResponse->name, $apiResponse->version)
73 | || empty($apiResponse->name)
74 | || empty($apiResponse->version)
75 | ) {
76 | return new WP_Error(
77 | 'puc-invalid-metadata',
78 | "The plugin metadata file does not contain the required 'name' and/or 'version' keys."
79 | );
80 | }
81 | return true;
82 | }
83 |
84 |
85 | /**
86 | * Transform plugin info into the format used by the native WordPress.org API
87 | *
88 | * @return object
89 | */
90 | public function toWpFormat(){
91 | $info = new stdClass;
92 |
93 | //The custom update API is built so that many fields have the same name and format
94 | //as those returned by the native WordPress.org API. These can be assigned directly.
95 | $sameFormat = array(
96 | 'name', 'slug', 'version', 'requires', 'tested', 'rating', 'upgrade_notice',
97 | 'num_ratings', 'downloaded', 'active_installs', 'homepage', 'last_updated',
98 | 'requires_php',
99 | );
100 | foreach($sameFormat as $field){
101 | if ( isset($this->$field) ) {
102 | $info->$field = $this->$field;
103 | } else {
104 | $info->$field = null;
105 | }
106 | }
107 |
108 | //Other fields need to be renamed and/or transformed.
109 | $info->download_link = $this->download_url;
110 | $info->author = $this->getFormattedAuthor();
111 | $info->sections = array_merge(array('description' => ''), $this->sections);
112 |
113 | if ( !empty($this->banners) ) {
114 | //WP expects an array with two keys: "high" and "low". Both are optional.
115 | //Docs: https://wordpress.org/plugins/about/faq/#banners
116 | $info->banners = is_object($this->banners) ? get_object_vars($this->banners) : $this->banners;
117 | $info->banners = array_intersect_key($info->banners, array('high' => true, 'low' => true));
118 | }
119 |
120 | return $info;
121 | }
122 |
123 | protected function getFormattedAuthor() {
124 | if ( !empty($this->author_homepage) ){
125 | /** @noinspection HtmlUnknownTarget */
126 | return sprintf('%s', $this->author_homepage, $this->author);
127 | }
128 | return $this->author;
129 | }
130 | }
131 |
132 | endif;
133 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Plugin/Package.php:
--------------------------------------------------------------------------------
1 | pluginAbsolutePath = $pluginAbsolutePath;
27 | $this->pluginFile = plugin_basename($this->pluginAbsolutePath);
28 |
29 | parent::__construct($updateChecker);
30 |
31 | //Clear the version number cache when something - anything - is upgraded or WP clears the update cache.
32 | add_filter('upgrader_post_install', array($this, 'clearCachedVersion'));
33 | add_action('delete_site_transient_update_plugins', array($this, 'clearCachedVersion'));
34 | }
35 |
36 | public function getInstalledVersion() {
37 | if ( isset($this->cachedInstalledVersion) ) {
38 | return $this->cachedInstalledVersion;
39 | }
40 |
41 | $pluginHeader = $this->getPluginHeader();
42 | if ( isset($pluginHeader['Version']) ) {
43 | $this->cachedInstalledVersion = $pluginHeader['Version'];
44 | return $pluginHeader['Version'];
45 | } else {
46 | //This can happen if the filename points to something that is not a plugin.
47 | $this->updateChecker->triggerError(
48 | sprintf(
49 | "Can't to read the Version header for '%s'. The filename is incorrect or is not a plugin.",
50 | $this->updateChecker->pluginFile
51 | ),
52 | E_USER_WARNING
53 | );
54 | return null;
55 | }
56 | }
57 |
58 | /**
59 | * Clear the cached plugin version. This method can be set up as a filter (hook) and will
60 | * return the filter argument unmodified.
61 | *
62 | * @param mixed $filterArgument
63 | * @return mixed
64 | */
65 | public function clearCachedVersion($filterArgument = null) {
66 | $this->cachedInstalledVersion = null;
67 | return $filterArgument;
68 | }
69 |
70 | public function getAbsoluteDirectoryPath() {
71 | return dirname($this->pluginAbsolutePath);
72 | }
73 |
74 | /**
75 | * Get the value of a specific plugin or theme header.
76 | *
77 | * @param string $headerName
78 | * @param string $defaultValue
79 | * @return string Either the value of the header, or $defaultValue if the header doesn't exist or is empty.
80 | */
81 | public function getHeaderValue($headerName, $defaultValue = '') {
82 | $headers = $this->getPluginHeader();
83 | if ( isset($headers[$headerName]) && ($headers[$headerName] !== '') ) {
84 | return $headers[$headerName];
85 | }
86 | return $defaultValue;
87 | }
88 |
89 | protected function getHeaderNames() {
90 | return array(
91 | 'Name' => 'Plugin Name',
92 | 'PluginURI' => 'Plugin URI',
93 | 'Version' => 'Version',
94 | 'Description' => 'Description',
95 | 'Author' => 'Author',
96 | 'AuthorURI' => 'Author URI',
97 | 'TextDomain' => 'Text Domain',
98 | 'DomainPath' => 'Domain Path',
99 | 'Network' => 'Network',
100 |
101 | //The newest WordPress version that this plugin requires or has been tested with.
102 | //We support several different formats for compatibility with other libraries.
103 | 'Tested WP' => 'Tested WP',
104 | 'Requires WP' => 'Requires WP',
105 | 'Tested up to' => 'Tested up to',
106 | 'Requires at least' => 'Requires at least',
107 | );
108 | }
109 |
110 | /**
111 | * Get the translated plugin title.
112 | *
113 | * @return string
114 | */
115 | public function getPluginTitle() {
116 | $title = '';
117 | $header = $this->getPluginHeader();
118 | if ( $header && !empty($header['Name']) && isset($header['TextDomain']) ) {
119 | $title = translate($header['Name'], $header['TextDomain']);
120 | }
121 | return $title;
122 | }
123 |
124 | /**
125 | * Get plugin's metadata from its file header.
126 | *
127 | * @return array
128 | */
129 | public function getPluginHeader() {
130 | if ( !is_file($this->pluginAbsolutePath) ) {
131 | //This can happen if the plugin filename is wrong.
132 | $this->updateChecker->triggerError(
133 | sprintf(
134 | "Can't to read the plugin header for '%s'. The file does not exist.",
135 | $this->updateChecker->pluginFile
136 | ),
137 | E_USER_WARNING
138 | );
139 | return array();
140 | }
141 |
142 | if ( !function_exists('get_plugin_data') ) {
143 | /** @noinspection PhpIncludeInspection */
144 | require_once(ABSPATH . '/wp-admin/includes/plugin.php');
145 | }
146 | return get_plugin_data($this->pluginAbsolutePath, false, false);
147 | }
148 |
149 | public function removeHooks() {
150 | remove_filter('upgrader_post_install', array($this, 'clearCachedVersion'));
151 | remove_action('delete_site_transient_update_plugins', array($this, 'clearCachedVersion'));
152 | }
153 |
154 | /**
155 | * Check if the plugin file is inside the mu-plugins directory.
156 | *
157 | * @return bool
158 | */
159 | public function isMuPlugin() {
160 | static $cachedResult = null;
161 |
162 | if ( $cachedResult === null ) {
163 | if ( !defined('WPMU_PLUGIN_DIR') || !is_string(WPMU_PLUGIN_DIR) ) {
164 | $cachedResult = false;
165 | return $cachedResult;
166 | }
167 |
168 | //Convert both paths to the canonical form before comparison.
169 | $muPluginDir = realpath(WPMU_PLUGIN_DIR);
170 | $pluginPath = realpath($this->pluginAbsolutePath);
171 | //If realpath() fails, just normalize the syntax instead.
172 | if (($muPluginDir === false) || ($pluginPath === false)) {
173 | $muPluginDir = Puc_v4p10_Factory::normalizePath(WPMU_PLUGIN_DIR);
174 | $pluginPath = Puc_v4p10_Factory::normalizePath($this->pluginAbsolutePath);
175 | }
176 |
177 | $cachedResult = (strpos($pluginPath, $muPluginDir) === 0);
178 | }
179 |
180 | return $cachedResult;
181 | }
182 | }
183 |
184 | endif;
185 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Plugin/Update.php:
--------------------------------------------------------------------------------
1 | copyFields($object, $update);
62 | return $update;
63 | }
64 |
65 | /**
66 | * @return string[]
67 | */
68 | protected function getFieldNames() {
69 | return array_merge(parent::getFieldNames(), self::$extraFields);
70 | }
71 |
72 | /**
73 | * Transform the update into the format used by WordPress native plugin API.
74 | *
75 | * @return object
76 | */
77 | public function toWpFormat() {
78 | $update = parent::toWpFormat();
79 |
80 | $update->id = $this->id;
81 | $update->url = $this->homepage;
82 | $update->tested = $this->tested;
83 | $update->requires_php = $this->requires_php;
84 | $update->plugin = $this->filename;
85 |
86 | if ( !empty($this->upgrade_notice) ) {
87 | $update->upgrade_notice = $this->upgrade_notice;
88 | }
89 |
90 | if ( !empty($this->icons) && is_array($this->icons) ) {
91 | //This should be an array with up to 4 keys: 'svg', '1x', '2x' and 'default'.
92 | //Docs: https://developer.wordpress.org/plugins/wordpress-org/plugin-assets/#plugin-icons
93 | $icons = array_intersect_key(
94 | $this->icons,
95 | array('svg' => true, '1x' => true, '2x' => true, 'default' => true)
96 | );
97 | if ( !empty($icons) ) {
98 | $update->icons = $icons;
99 |
100 | //It appears that the 'default' icon isn't used anywhere in WordPress 4.9,
101 | //but lets set it just in case a future release needs it.
102 | if ( !isset($update->icons['default']) ) {
103 | $update->icons['default'] = current($update->icons);
104 | }
105 | }
106 | }
107 |
108 | return $update;
109 | }
110 | }
111 |
112 | endif;
113 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/StateStore.php:
--------------------------------------------------------------------------------
1 | optionName = $optionName;
33 | }
34 |
35 | /**
36 | * Get time elapsed since the last update check.
37 | *
38 | * If there are no recorded update checks, this method returns a large arbitrary number
39 | * (i.e. time since the Unix epoch).
40 | *
41 | * @return int Elapsed time in seconds.
42 | */
43 | public function timeSinceLastCheck() {
44 | $this->lazyLoad();
45 | return time() - $this->lastCheck;
46 | }
47 |
48 | /**
49 | * @return int
50 | */
51 | public function getLastCheck() {
52 | $this->lazyLoad();
53 | return $this->lastCheck;
54 | }
55 |
56 | /**
57 | * Set the time of the last update check to the current timestamp.
58 | *
59 | * @return $this
60 | */
61 | public function setLastCheckToNow() {
62 | $this->lazyLoad();
63 | $this->lastCheck = time();
64 | return $this;
65 | }
66 |
67 | /**
68 | * @return null|Puc_v4p10_Update
69 | */
70 | public function getUpdate() {
71 | $this->lazyLoad();
72 | return $this->update;
73 | }
74 |
75 | /**
76 | * @param Puc_v4p10_Update|null $update
77 | * @return $this
78 | */
79 | public function setUpdate(Puc_v4p10_Update $update = null) {
80 | $this->lazyLoad();
81 | $this->update = $update;
82 | return $this;
83 | }
84 |
85 | /**
86 | * @return string
87 | */
88 | public function getCheckedVersion() {
89 | $this->lazyLoad();
90 | return $this->checkedVersion;
91 | }
92 |
93 | /**
94 | * @param string $version
95 | * @return $this
96 | */
97 | public function setCheckedVersion($version) {
98 | $this->lazyLoad();
99 | $this->checkedVersion = strval($version);
100 | return $this;
101 | }
102 |
103 | /**
104 | * Get translation updates.
105 | *
106 | * @return array
107 | */
108 | public function getTranslations() {
109 | $this->lazyLoad();
110 | if ( isset($this->update, $this->update->translations) ) {
111 | return $this->update->translations;
112 | }
113 | return array();
114 | }
115 |
116 | /**
117 | * Set translation updates.
118 | *
119 | * @param array $translationUpdates
120 | */
121 | public function setTranslations($translationUpdates) {
122 | $this->lazyLoad();
123 | if ( isset($this->update) ) {
124 | $this->update->translations = $translationUpdates;
125 | $this->save();
126 | }
127 | }
128 |
129 | public function save() {
130 | $state = new stdClass();
131 |
132 | $state->lastCheck = $this->lastCheck;
133 | $state->checkedVersion = $this->checkedVersion;
134 |
135 | if ( isset($this->update)) {
136 | $state->update = $this->update->toStdClass();
137 |
138 | $updateClass = get_class($this->update);
139 | $state->updateClass = $updateClass;
140 | $prefix = $this->getLibPrefix();
141 | if ( Puc_v4p10_Utils::startsWith($updateClass, $prefix) ) {
142 | $state->updateBaseClass = substr($updateClass, strlen($prefix));
143 | }
144 | }
145 |
146 | update_site_option($this->optionName, $state);
147 | $this->isLoaded = true;
148 | }
149 |
150 | /**
151 | * @return $this
152 | */
153 | public function lazyLoad() {
154 | if ( !$this->isLoaded ) {
155 | $this->load();
156 | }
157 | return $this;
158 | }
159 |
160 | protected function load() {
161 | $this->isLoaded = true;
162 |
163 | $state = get_site_option($this->optionName, null);
164 |
165 | if ( !is_object($state) ) {
166 | $this->lastCheck = 0;
167 | $this->checkedVersion = '';
168 | $this->update = null;
169 | return;
170 | }
171 |
172 | $this->lastCheck = intval(Puc_v4p10_Utils::get($state, 'lastCheck', 0));
173 | $this->checkedVersion = Puc_v4p10_Utils::get($state, 'checkedVersion', '');
174 | $this->update = null;
175 |
176 | if ( isset($state->update) ) {
177 | //This mess is due to the fact that the want the update class from this version
178 | //of the library, not the version that saved the update.
179 |
180 | $updateClass = null;
181 | if ( isset($state->updateBaseClass) ) {
182 | $updateClass = $this->getLibPrefix() . $state->updateBaseClass;
183 | } else if ( isset($state->updateClass) && class_exists($state->updateClass) ) {
184 | $updateClass = $state->updateClass;
185 | }
186 |
187 | if ( $updateClass !== null ) {
188 | $this->update = call_user_func(array($updateClass, 'fromObject'), $state->update);
189 | }
190 | }
191 | }
192 |
193 | public function delete() {
194 | delete_site_option($this->optionName);
195 |
196 | $this->lastCheck = 0;
197 | $this->checkedVersion = '';
198 | $this->update = null;
199 | }
200 |
201 | private function getLibPrefix() {
202 | $parts = explode('_', __CLASS__, 3);
203 | return $parts[0] . '_' . $parts[1] . '_';
204 | }
205 | }
206 |
207 | endif;
208 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Theme/Package.php:
--------------------------------------------------------------------------------
1 | stylesheet = $stylesheet;
17 | $this->theme = wp_get_theme($this->stylesheet);
18 |
19 | parent::__construct($updateChecker);
20 | }
21 |
22 | public function getInstalledVersion() {
23 | return $this->theme->get('Version');
24 | }
25 |
26 | public function getAbsoluteDirectoryPath() {
27 | if ( method_exists($this->theme, 'get_stylesheet_directory') ) {
28 | return $this->theme->get_stylesheet_directory(); //Available since WP 3.4.
29 | }
30 | return get_theme_root($this->stylesheet) . '/' . $this->stylesheet;
31 | }
32 |
33 | /**
34 | * Get the value of a specific plugin or theme header.
35 | *
36 | * @param string $headerName
37 | * @param string $defaultValue
38 | * @return string Either the value of the header, or $defaultValue if the header doesn't exist or is empty.
39 | */
40 | public function getHeaderValue($headerName, $defaultValue = '') {
41 | $value = $this->theme->get($headerName);
42 | if ( ($headerName === false) || ($headerName === '') ) {
43 | return $defaultValue;
44 | }
45 | return $value;
46 | }
47 |
48 | protected function getHeaderNames() {
49 | return array(
50 | 'Name' => 'Theme Name',
51 | 'ThemeURI' => 'Theme URI',
52 | 'Description' => 'Description',
53 | 'Author' => 'Author',
54 | 'AuthorURI' => 'Author URI',
55 | 'Version' => 'Version',
56 | 'Template' => 'Template',
57 | 'Status' => 'Status',
58 | 'Tags' => 'Tags',
59 | 'TextDomain' => 'Text Domain',
60 | 'DomainPath' => 'Domain Path',
61 | );
62 | }
63 | }
64 |
65 | endif;
66 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Theme/Update.php:
--------------------------------------------------------------------------------
1 | $this->slug,
19 | 'new_version' => $this->version,
20 | 'url' => $this->details_url,
21 | );
22 |
23 | if ( !empty($this->download_url) ) {
24 | $update['package'] = $this->download_url;
25 | }
26 |
27 | return $update;
28 | }
29 |
30 | /**
31 | * Create a new instance of Theme_Update from its JSON-encoded representation.
32 | *
33 | * @param string $json Valid JSON string representing a theme information object.
34 | * @return self New instance of ThemeUpdate, or NULL on error.
35 | */
36 | public static function fromJson($json) {
37 | $instance = new self();
38 | if ( !parent::createFromJson($json, $instance) ) {
39 | return null;
40 | }
41 | return $instance;
42 | }
43 |
44 | /**
45 | * Create a new instance by copying the necessary fields from another object.
46 | *
47 | * @param StdClass|Puc_v4p10_Theme_Update $object The source object.
48 | * @return Puc_v4p10_Theme_Update The new copy.
49 | */
50 | public static function fromObject($object) {
51 | $update = new self();
52 | $update->copyFields($object, $update);
53 | return $update;
54 | }
55 |
56 | /**
57 | * Basic validation.
58 | *
59 | * @param StdClass $apiResponse
60 | * @return bool|WP_Error
61 | */
62 | protected function validateMetadata($apiResponse) {
63 | $required = array('version', 'details_url');
64 | foreach($required as $key) {
65 | if ( !isset($apiResponse->$key) || empty($apiResponse->$key) ) {
66 | return new WP_Error(
67 | 'tuc-invalid-metadata',
68 | sprintf('The theme metadata is missing the required "%s" key.', $key)
69 | );
70 | }
71 | }
72 | return true;
73 | }
74 |
75 | protected function getFieldNames() {
76 | return array_merge(parent::getFieldNames(), self::$extraFields);
77 | }
78 |
79 | protected function getPrefixedFilter($tag) {
80 | return parent::getPrefixedFilter($tag) . '_theme';
81 | }
82 | }
83 |
84 | endif;
85 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Theme/UpdateChecker.php:
--------------------------------------------------------------------------------
1 | stylesheet = $stylesheet;
20 |
21 | parent::__construct(
22 | $metadataUrl,
23 | $stylesheet,
24 | $customSlug ? $customSlug : $stylesheet,
25 | $checkPeriod,
26 | $optionName
27 | );
28 | }
29 |
30 | /**
31 | * For themes, the update array is indexed by theme directory name.
32 | *
33 | * @return string
34 | */
35 | protected function getUpdateListKey() {
36 | return $this->directoryName;
37 | }
38 |
39 | /**
40 | * Retrieve the latest update (if any) from the configured API endpoint.
41 | *
42 | * @return Puc_v4p10_Update|null An instance of Update, or NULL when no updates are available.
43 | */
44 | public function requestUpdate() {
45 | list($themeUpdate, $result) = $this->requestMetadata('Puc_v4p10_Theme_Update', 'request_update');
46 |
47 | if ( $themeUpdate !== null ) {
48 | /** @var Puc_v4p10_Theme_Update $themeUpdate */
49 | $themeUpdate->slug = $this->slug;
50 | }
51 |
52 | $themeUpdate = $this->filterUpdateResult($themeUpdate, $result);
53 | return $themeUpdate;
54 | }
55 |
56 | protected function getNoUpdateItemFields() {
57 | return array_merge(
58 | parent::getNoUpdateItemFields(),
59 | array(
60 | 'theme' => $this->directoryName,
61 | 'requires' => '',
62 | )
63 | );
64 | }
65 |
66 | public function userCanInstallUpdates() {
67 | return current_user_can('update_themes');
68 | }
69 |
70 | /**
71 | * Create an instance of the scheduler.
72 | *
73 | * @param int $checkPeriod
74 | * @return Puc_v4p10_Scheduler
75 | */
76 | protected function createScheduler($checkPeriod) {
77 | return new Puc_v4p10_Scheduler($this, $checkPeriod, array('load-themes.php'));
78 | }
79 |
80 | /**
81 | * Is there an update being installed right now for this theme?
82 | *
83 | * @param WP_Upgrader|null $upgrader The upgrader that's performing the current update.
84 | * @return bool
85 | */
86 | public function isBeingUpgraded($upgrader = null) {
87 | return $this->upgraderStatus->isThemeBeingUpgraded($this->stylesheet, $upgrader);
88 | }
89 |
90 | protected function createDebugBarExtension() {
91 | return new Puc_v4p10_DebugBar_Extension($this, 'Puc_v4p10_DebugBar_ThemePanel');
92 | }
93 |
94 | /**
95 | * Register a callback for filtering query arguments.
96 | *
97 | * The callback function should take one argument - an associative array of query arguments.
98 | * It should return a modified array of query arguments.
99 | *
100 | * @param callable $callback
101 | * @return void
102 | */
103 | public function addQueryArgFilter($callback){
104 | $this->addFilter('request_update_query_args', $callback);
105 | }
106 |
107 | /**
108 | * Register a callback for filtering arguments passed to wp_remote_get().
109 | *
110 | * The callback function should take one argument - an associative array of arguments -
111 | * and return a modified array or arguments. See the WP documentation on wp_remote_get()
112 | * for details on what arguments are available and how they work.
113 | *
114 | * @uses add_filter() This method is a convenience wrapper for add_filter().
115 | *
116 | * @param callable $callback
117 | * @return void
118 | */
119 | public function addHttpRequestArgFilter($callback) {
120 | $this->addFilter('request_update_options', $callback);
121 | }
122 |
123 | /**
124 | * Register a callback for filtering theme updates retrieved from the external API.
125 | *
126 | * The callback function should take two arguments. If the theme update was retrieved
127 | * successfully, the first argument passed will be an instance of Theme_Update. Otherwise,
128 | * it will be NULL. The second argument will be the corresponding return value of
129 | * wp_remote_get (see WP docs for details).
130 | *
131 | * The callback function should return a new or modified instance of Theme_Update or NULL.
132 | *
133 | * @uses add_filter() This method is a convenience wrapper for add_filter().
134 | *
135 | * @param callable $callback
136 | * @return void
137 | */
138 | public function addResultFilter($callback) {
139 | $this->addFilter('request_update_result', $callback, 10, 2);
140 | }
141 |
142 | /**
143 | * Create a package instance that represents this plugin or theme.
144 | *
145 | * @return Puc_v4p10_InstalledPackage
146 | */
147 | protected function createInstalledPackage() {
148 | return new Puc_v4p10_Theme_Package($this->stylesheet, $this);
149 | }
150 | }
151 |
152 | endif;
153 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Update.php:
--------------------------------------------------------------------------------
1 | slug = $this->slug;
27 | $update->new_version = $this->version;
28 | $update->package = $this->download_url;
29 |
30 | return $update;
31 | }
32 | }
33 |
34 | endif;
35 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/UpgraderStatus.php:
--------------------------------------------------------------------------------
1 | isBeingUpgraded('plugin', $pluginFile, $upgrader);
35 | }
36 |
37 | /**
38 | * Is there an update being installed for a specific theme?
39 | *
40 | * @param string $stylesheet Theme directory name.
41 | * @param WP_Upgrader|null $upgrader The upgrader that's performing the current update.
42 | * @return bool
43 | */
44 | public function isThemeBeingUpgraded($stylesheet, $upgrader = null) {
45 | return $this->isBeingUpgraded('theme', $stylesheet, $upgrader);
46 | }
47 |
48 | /**
49 | * Check if a specific theme or plugin is being upgraded.
50 | *
51 | * @param string $type
52 | * @param string $id
53 | * @param Plugin_Upgrader|WP_Upgrader|null $upgrader
54 | * @return bool
55 | */
56 | protected function isBeingUpgraded($type, $id, $upgrader = null) {
57 | if ( isset($upgrader) ) {
58 | list($currentType, $currentId) = $this->getThingBeingUpgradedBy($upgrader);
59 | if ( $currentType !== null ) {
60 | $this->currentType = $currentType;
61 | $this->currentId = $currentId;
62 | }
63 | }
64 | return ($this->currentType === $type) && ($this->currentId === $id);
65 | }
66 |
67 | /**
68 | * Figure out which theme or plugin is being upgraded by a WP_Upgrader instance.
69 | *
70 | * Returns an array with two items. The first item is the type of the thing that's being
71 | * upgraded: "plugin" or "theme". The second item is either the plugin basename or
72 | * the theme directory name. If we can't determine what the upgrader is doing, both items
73 | * will be NULL.
74 | *
75 | * Examples:
76 | * ['plugin', 'plugin-dir-name/plugin.php']
77 | * ['theme', 'theme-dir-name']
78 | *
79 | * @param Plugin_Upgrader|WP_Upgrader $upgrader
80 | * @return array
81 | */
82 | private function getThingBeingUpgradedBy($upgrader) {
83 | if ( !isset($upgrader, $upgrader->skin) ) {
84 | return array(null, null);
85 | }
86 |
87 | //Figure out which plugin or theme is being upgraded.
88 | $pluginFile = null;
89 | $themeDirectoryName = null;
90 |
91 | $skin = $upgrader->skin;
92 | if ( isset($skin->theme_info) && ($skin->theme_info instanceof WP_Theme) ) {
93 | $themeDirectoryName = $skin->theme_info->get_stylesheet();
94 | } elseif ( $skin instanceof Plugin_Upgrader_Skin ) {
95 | if ( isset($skin->plugin) && is_string($skin->plugin) && ($skin->plugin !== '') ) {
96 | $pluginFile = $skin->plugin;
97 | }
98 | } elseif ( $skin instanceof Theme_Upgrader_Skin ) {
99 | if ( isset($skin->theme) && is_string($skin->theme) && ($skin->theme !== '') ) {
100 | $themeDirectoryName = $skin->theme;
101 | }
102 | } elseif ( isset($skin->plugin_info) && is_array($skin->plugin_info) ) {
103 | //This case is tricky because Bulk_Plugin_Upgrader_Skin (etc) doesn't actually store the plugin
104 | //filename anywhere. Instead, it has the plugin headers in $plugin_info. So the best we can
105 | //do is compare those headers to the headers of installed plugins.
106 | $pluginFile = $this->identifyPluginByHeaders($skin->plugin_info);
107 | }
108 |
109 | if ( $pluginFile !== null ) {
110 | return array('plugin', $pluginFile);
111 | } elseif ( $themeDirectoryName !== null ) {
112 | return array('theme', $themeDirectoryName);
113 | }
114 | return array(null, null);
115 | }
116 |
117 | /**
118 | * Identify an installed plugin based on its headers.
119 | *
120 | * @param array $searchHeaders The plugin file header to look for.
121 | * @return string|null Plugin basename ("foo/bar.php"), or NULL if we can't identify the plugin.
122 | */
123 | private function identifyPluginByHeaders($searchHeaders) {
124 | if ( !function_exists('get_plugins') ){
125 | /** @noinspection PhpIncludeInspection */
126 | require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
127 | }
128 |
129 | $installedPlugins = get_plugins();
130 | $matches = array();
131 | foreach($installedPlugins as $pluginBasename => $headers) {
132 | $diff1 = array_diff_assoc($headers, $searchHeaders);
133 | $diff2 = array_diff_assoc($searchHeaders, $headers);
134 | if ( empty($diff1) && empty($diff2) ) {
135 | $matches[] = $pluginBasename;
136 | }
137 | }
138 |
139 | //It's possible (though very unlikely) that there could be two plugins with identical
140 | //headers. In that case, we can't unambiguously identify the plugin that's being upgraded.
141 | if ( count($matches) !== 1 ) {
142 | return null;
143 | }
144 |
145 | return reset($matches);
146 | }
147 |
148 | /**
149 | * @access private
150 | *
151 | * @param mixed $input
152 | * @param array $hookExtra
153 | * @return mixed Returns $input unaltered.
154 | */
155 | public function setUpgradedThing($input, $hookExtra) {
156 | if ( !empty($hookExtra['plugin']) && is_string($hookExtra['plugin']) ) {
157 | $this->currentId = $hookExtra['plugin'];
158 | $this->currentType = 'plugin';
159 | } elseif ( !empty($hookExtra['theme']) && is_string($hookExtra['theme']) ) {
160 | $this->currentId = $hookExtra['theme'];
161 | $this->currentType = 'theme';
162 | } else {
163 | $this->currentType = null;
164 | $this->currentId = null;
165 | }
166 | return $input;
167 | }
168 |
169 | /**
170 | * @access private
171 | *
172 | * @param array $options
173 | * @return array
174 | */
175 | public function setUpgradedPluginFromOptions($options) {
176 | if ( isset($options['hook_extra']['plugin']) && is_string($options['hook_extra']['plugin']) ) {
177 | $this->currentType = 'plugin';
178 | $this->currentId = $options['hook_extra']['plugin'];
179 | } else {
180 | $this->currentType = null;
181 | $this->currentId = null;
182 | }
183 | return $options;
184 | }
185 |
186 | /**
187 | * @access private
188 | *
189 | * @param mixed $input
190 | * @return mixed Returns $input unaltered.
191 | */
192 | public function clearUpgradedThing($input = null) {
193 | $this->currentId = null;
194 | $this->currentType = null;
195 | return $input;
196 | }
197 | }
198 |
199 | endif;
200 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Utils.php:
--------------------------------------------------------------------------------
1 | $node) ) {
26 | $currentValue = $currentValue->$node;
27 | } else {
28 | return $default;
29 | }
30 | }
31 |
32 | return $currentValue;
33 | }
34 |
35 | /**
36 | * Get the first array element that is not empty.
37 | *
38 | * @param array $values
39 | * @param mixed|null $default Returns this value if there are no non-empty elements.
40 | * @return mixed|null
41 | */
42 | public static function findNotEmpty($values, $default = null) {
43 | if ( empty($values) ) {
44 | return $default;
45 | }
46 |
47 | foreach ($values as $value) {
48 | if ( !empty($value) ) {
49 | return $value;
50 | }
51 | }
52 |
53 | return $default;
54 | }
55 |
56 | /**
57 | * Check if the input string starts with the specified prefix.
58 | *
59 | * @param string $input
60 | * @param string $prefix
61 | * @return bool
62 | */
63 | public static function startsWith($input, $prefix) {
64 | $length = strlen($prefix);
65 | return (substr($input, 0, $length) === $prefix);
66 | }
67 | }
68 |
69 | endif;
70 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Vcs/Api.php:
--------------------------------------------------------------------------------
1 | repositoryUrl = $repositoryUrl;
37 | $this->setAuthentication($credentials);
38 | }
39 |
40 | /**
41 | * @return string
42 | */
43 | public function getRepositoryUrl() {
44 | return $this->repositoryUrl;
45 | }
46 |
47 | /**
48 | * Figure out which reference (i.e tag or branch) contains the latest version.
49 | *
50 | * @param string $configBranch Start looking in this branch.
51 | * @return null|Puc_v4p10_Vcs_Reference
52 | */
53 | abstract public function chooseReference($configBranch);
54 |
55 | /**
56 | * Get the readme.txt file from the remote repository and parse it
57 | * according to the plugin readme standard.
58 | *
59 | * @param string $ref Tag or branch name.
60 | * @return array Parsed readme.
61 | */
62 | public function getRemoteReadme($ref = 'master') {
63 | $fileContents = $this->getRemoteFile($this->getLocalReadmeName(), $ref);
64 | if ( empty($fileContents) ) {
65 | return array();
66 | }
67 |
68 | $parser = new PucReadmeParser();
69 | return $parser->parse_readme_contents($fileContents);
70 | }
71 |
72 | /**
73 | * Get the case-sensitive name of the local readme.txt file.
74 | *
75 | * In most cases it should just be called "readme.txt", but some plugins call it "README.txt",
76 | * "README.TXT", or even "Readme.txt". Most VCS are case-sensitive so we need to know the correct
77 | * capitalization.
78 | *
79 | * Defaults to "readme.txt" (all lowercase).
80 | *
81 | * @return string
82 | */
83 | public function getLocalReadmeName() {
84 | static $fileName = null;
85 | if ( $fileName !== null ) {
86 | return $fileName;
87 | }
88 |
89 | $fileName = 'readme.txt';
90 | if ( isset($this->localDirectory) ) {
91 | $files = scandir($this->localDirectory);
92 | if ( !empty($files) ) {
93 | foreach ($files as $possibleFileName) {
94 | if ( strcasecmp($possibleFileName, 'readme.txt') === 0 ) {
95 | $fileName = $possibleFileName;
96 | break;
97 | }
98 | }
99 | }
100 | }
101 | return $fileName;
102 | }
103 |
104 | /**
105 | * Get a branch.
106 | *
107 | * @param string $branchName
108 | * @return Puc_v4p10_Vcs_Reference|null
109 | */
110 | abstract public function getBranch($branchName);
111 |
112 | /**
113 | * Get a specific tag.
114 | *
115 | * @param string $tagName
116 | * @return Puc_v4p10_Vcs_Reference|null
117 | */
118 | abstract public function getTag($tagName);
119 |
120 | /**
121 | * Get the tag that looks like the highest version number.
122 | * (Implementations should skip pre-release versions if possible.)
123 | *
124 | * @return Puc_v4p10_Vcs_Reference|null
125 | */
126 | abstract public function getLatestTag();
127 |
128 | /**
129 | * Check if a tag name string looks like a version number.
130 | *
131 | * @param string $name
132 | * @return bool
133 | */
134 | protected function looksLikeVersion($name) {
135 | //Tag names may be prefixed with "v", e.g. "v1.2.3".
136 | $name = ltrim($name, 'v');
137 |
138 | //The version string must start with a number.
139 | if ( !is_numeric(substr($name, 0, 1)) ) {
140 | return false;
141 | }
142 |
143 | //The goal is to accept any SemVer-compatible or "PHP-standardized" version number.
144 | return (preg_match('@^(\d{1,5}?)(\.\d{1,10}?){0,4}?($|[abrdp+_\-]|\s)@i', $name) === 1);
145 | }
146 |
147 | /**
148 | * Check if a tag appears to be named like a version number.
149 | *
150 | * @param stdClass $tag
151 | * @return bool
152 | */
153 | protected function isVersionTag($tag) {
154 | $property = $this->tagNameProperty;
155 | return isset($tag->$property) && $this->looksLikeVersion($tag->$property);
156 | }
157 |
158 | /**
159 | * Sort a list of tags as if they were version numbers.
160 | * Tags that don't look like version number will be removed.
161 | *
162 | * @param stdClass[] $tags Array of tag objects.
163 | * @return stdClass[] Filtered array of tags sorted in descending order.
164 | */
165 | protected function sortTagsByVersion($tags) {
166 | //Keep only those tags that look like version numbers.
167 | $versionTags = array_filter($tags, array($this, 'isVersionTag'));
168 | //Sort them in descending order.
169 | usort($versionTags, array($this, 'compareTagNames'));
170 |
171 | return $versionTags;
172 | }
173 |
174 | /**
175 | * Compare two tags as if they were version number.
176 | *
177 | * @param stdClass $tag1 Tag object.
178 | * @param stdClass $tag2 Another tag object.
179 | * @return int
180 | */
181 | protected function compareTagNames($tag1, $tag2) {
182 | $property = $this->tagNameProperty;
183 | if ( !isset($tag1->$property) ) {
184 | return 1;
185 | }
186 | if ( !isset($tag2->$property) ) {
187 | return -1;
188 | }
189 | return -version_compare(ltrim($tag1->$property, 'v'), ltrim($tag2->$property, 'v'));
190 | }
191 |
192 | /**
193 | * Get the contents of a file from a specific branch or tag.
194 | *
195 | * @param string $path File name.
196 | * @param string $ref
197 | * @return null|string Either the contents of the file, or null if the file doesn't exist or there's an error.
198 | */
199 | abstract public function getRemoteFile($path, $ref = 'master');
200 |
201 | /**
202 | * Get the timestamp of the latest commit that changed the specified branch or tag.
203 | *
204 | * @param string $ref Reference name (e.g. branch or tag).
205 | * @return string|null
206 | */
207 | abstract public function getLatestCommitTime($ref);
208 |
209 | /**
210 | * Get the contents of the changelog file from the repository.
211 | *
212 | * @param string $ref
213 | * @param string $localDirectory Full path to the local plugin or theme directory.
214 | * @return null|string The HTML contents of the changelog.
215 | */
216 | public function getRemoteChangelog($ref, $localDirectory) {
217 | $filename = $this->findChangelogName($localDirectory);
218 | if ( empty($filename) ) {
219 | return null;
220 | }
221 |
222 | $changelog = $this->getRemoteFile($filename, $ref);
223 | if ( $changelog === null ) {
224 | return null;
225 | }
226 |
227 | /** @noinspection PhpUndefinedClassInspection */
228 | return Parsedown::instance()->text($changelog);
229 | }
230 |
231 | /**
232 | * Guess the name of the changelog file.
233 | *
234 | * @param string $directory
235 | * @return string|null
236 | */
237 | protected function findChangelogName($directory = null) {
238 | if ( !isset($directory) ) {
239 | $directory = $this->localDirectory;
240 | }
241 | if ( empty($directory) || !is_dir($directory) || ($directory === '.') ) {
242 | return null;
243 | }
244 |
245 | $possibleNames = array('CHANGES.md', 'CHANGELOG.md', 'changes.md', 'changelog.md');
246 | $files = scandir($directory);
247 | $foundNames = array_intersect($possibleNames, $files);
248 |
249 | if ( !empty($foundNames) ) {
250 | return reset($foundNames);
251 | }
252 | return null;
253 | }
254 |
255 | /**
256 | * Set authentication credentials.
257 | *
258 | * @param $credentials
259 | */
260 | public function setAuthentication($credentials) {
261 | $this->credentials = $credentials;
262 | }
263 |
264 | public function isAuthenticationEnabled() {
265 | return !empty($this->credentials);
266 | }
267 |
268 | /**
269 | * @param string $url
270 | * @return string
271 | */
272 | public function signDownloadUrl($url) {
273 | return $url;
274 | }
275 |
276 | /**
277 | * @param string $filterName
278 | */
279 | public function setHttpFilterName($filterName) {
280 | $this->httpFilterName = $filterName;
281 | }
282 |
283 | /**
284 | * @param string $directory
285 | */
286 | public function setLocalDirectory($directory) {
287 | if ( empty($directory) || !is_dir($directory) || ($directory === '.') ) {
288 | $this->localDirectory = null;
289 | } else {
290 | $this->localDirectory = $directory;
291 | }
292 | }
293 |
294 | /**
295 | * @param string $slug
296 | */
297 | public function setSlug($slug) {
298 | $this->slug = $slug;
299 | }
300 | }
301 |
302 | endif;
303 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Vcs/BaseChecker.php:
--------------------------------------------------------------------------------
1 | [^/]+?)/(?P[^/#?&]+?)/?$@', $path, $matches) ) {
23 | $this->username = $matches['username'];
24 | $this->repository = $matches['repository'];
25 | } else {
26 | throw new InvalidArgumentException('Invalid BitBucket repository URL: "' . $repositoryUrl . '"');
27 | }
28 |
29 | parent::__construct($repositoryUrl, $credentials);
30 | }
31 |
32 | /**
33 | * Figure out which reference (i.e tag or branch) contains the latest version.
34 | *
35 | * @param string $configBranch Start looking in this branch.
36 | * @return null|Puc_v4p10_Vcs_Reference
37 | */
38 | public function chooseReference($configBranch) {
39 | $updateSource = null;
40 |
41 | //Check if there's a "Stable tag: 1.2.3" header that points to a valid tag.
42 | $updateSource = $this->getStableTag($configBranch);
43 |
44 | //Look for version-like tags.
45 | if ( !$updateSource && ($configBranch === 'master') ) {
46 | $updateSource = $this->getLatestTag();
47 | }
48 | //If all else fails, use the specified branch itself.
49 | if ( !$updateSource ) {
50 | $updateSource = $this->getBranch($configBranch);
51 | }
52 |
53 | return $updateSource;
54 | }
55 |
56 | public function getBranch($branchName) {
57 | $branch = $this->api('/refs/branches/' . $branchName);
58 | if ( is_wp_error($branch) || empty($branch) ) {
59 | return null;
60 | }
61 |
62 | return new Puc_v4p10_Vcs_Reference(array(
63 | 'name' => $branch->name,
64 | 'updated' => $branch->target->date,
65 | 'downloadUrl' => $this->getDownloadUrl($branch->name),
66 | ));
67 | }
68 |
69 | /**
70 | * Get a specific tag.
71 | *
72 | * @param string $tagName
73 | * @return Puc_v4p10_Vcs_Reference|null
74 | */
75 | public function getTag($tagName) {
76 | $tag = $this->api('/refs/tags/' . $tagName);
77 | if ( is_wp_error($tag) || empty($tag) ) {
78 | return null;
79 | }
80 |
81 | return new Puc_v4p10_Vcs_Reference(array(
82 | 'name' => $tag->name,
83 | 'version' => ltrim($tag->name, 'v'),
84 | 'updated' => $tag->target->date,
85 | 'downloadUrl' => $this->getDownloadUrl($tag->name),
86 | ));
87 | }
88 |
89 | /**
90 | * Get the tag that looks like the highest version number.
91 | *
92 | * @return Puc_v4p10_Vcs_Reference|null
93 | */
94 | public function getLatestTag() {
95 | $tags = $this->api('/refs/tags?sort=-target.date');
96 | if ( !isset($tags, $tags->values) || !is_array($tags->values) ) {
97 | return null;
98 | }
99 |
100 | //Filter and sort the list of tags.
101 | $versionTags = $this->sortTagsByVersion($tags->values);
102 |
103 | //Return the first result.
104 | if ( !empty($versionTags) ) {
105 | $tag = $versionTags[0];
106 | return new Puc_v4p10_Vcs_Reference(array(
107 | 'name' => $tag->name,
108 | 'version' => ltrim($tag->name, 'v'),
109 | 'updated' => $tag->target->date,
110 | 'downloadUrl' => $this->getDownloadUrl($tag->name),
111 | ));
112 | }
113 | return null;
114 | }
115 |
116 | /**
117 | * Get the tag/ref specified by the "Stable tag" header in the readme.txt of a given branch.
118 | *
119 | * @param string $branch
120 | * @return null|Puc_v4p10_Vcs_Reference
121 | */
122 | protected function getStableTag($branch) {
123 | $remoteReadme = $this->getRemoteReadme($branch);
124 | if ( !empty($remoteReadme['stable_tag']) ) {
125 | $tag = $remoteReadme['stable_tag'];
126 |
127 | //You can explicitly opt out of using tags by setting "Stable tag" to
128 | //"trunk" or the name of the current branch.
129 | if ( ($tag === $branch) || ($tag === 'trunk') ) {
130 | return $this->getBranch($branch);
131 | }
132 |
133 | return $this->getTag($tag);
134 | }
135 |
136 | return null;
137 | }
138 |
139 | /**
140 | * @param string $ref
141 | * @return string
142 | */
143 | protected function getDownloadUrl($ref) {
144 | return sprintf(
145 | 'https://bitbucket.org/%s/%s/get/%s.zip',
146 | $this->username,
147 | $this->repository,
148 | $ref
149 | );
150 | }
151 |
152 | /**
153 | * Get the contents of a file from a specific branch or tag.
154 | *
155 | * @param string $path File name.
156 | * @param string $ref
157 | * @return null|string Either the contents of the file, or null if the file doesn't exist or there's an error.
158 | */
159 | public function getRemoteFile($path, $ref = 'master') {
160 | $response = $this->api('src/' . $ref . '/' . ltrim($path));
161 | if ( is_wp_error($response) || !is_string($response) ) {
162 | return null;
163 | }
164 | return $response;
165 | }
166 |
167 | /**
168 | * Get the timestamp of the latest commit that changed the specified branch or tag.
169 | *
170 | * @param string $ref Reference name (e.g. branch or tag).
171 | * @return string|null
172 | */
173 | public function getLatestCommitTime($ref) {
174 | $response = $this->api('commits/' . $ref);
175 | if ( isset($response->values, $response->values[0], $response->values[0]->date) ) {
176 | return $response->values[0]->date;
177 | }
178 | return null;
179 | }
180 |
181 | /**
182 | * Perform a BitBucket API 2.0 request.
183 | *
184 | * @param string $url
185 | * @param string $version
186 | * @return mixed|WP_Error
187 | */
188 | public function api($url, $version = '2.0') {
189 | $url = ltrim($url, '/');
190 | $isSrcResource = Puc_v4p10_Utils::startsWith($url, 'src/');
191 |
192 | $url = implode('/', array(
193 | 'https://api.bitbucket.org',
194 | $version,
195 | 'repositories',
196 | $this->username,
197 | $this->repository,
198 | $url
199 | ));
200 | $baseUrl = $url;
201 |
202 | if ( $this->oauth ) {
203 | $url = $this->oauth->sign($url,'GET');
204 | }
205 |
206 | $options = array('timeout' => 10);
207 | if ( !empty($this->httpFilterName) ) {
208 | $options = apply_filters($this->httpFilterName, $options);
209 | }
210 | $response = wp_remote_get($url, $options);
211 | if ( is_wp_error($response) ) {
212 | do_action('puc_api_error', $response, null, $url, $this->slug);
213 | return $response;
214 | }
215 |
216 | $code = wp_remote_retrieve_response_code($response);
217 | $body = wp_remote_retrieve_body($response);
218 | if ( $code === 200 ) {
219 | if ( $isSrcResource ) {
220 | //Most responses are JSON-encoded, but src resources just
221 | //return raw file contents.
222 | $document = $body;
223 | } else {
224 | $document = json_decode($body);
225 | }
226 | return $document;
227 | }
228 |
229 | $error = new WP_Error(
230 | 'puc-bitbucket-http-error',
231 | sprintf('BitBucket API error. Base URL: "%s", HTTP status code: %d.', $baseUrl, $code)
232 | );
233 | do_action('puc_api_error', $error, $response, $url, $this->slug);
234 |
235 | return $error;
236 | }
237 |
238 | /**
239 | * @param array $credentials
240 | */
241 | public function setAuthentication($credentials) {
242 | parent::setAuthentication($credentials);
243 |
244 | if ( !empty($credentials) && !empty($credentials['consumer_key']) ) {
245 | $this->oauth = new Puc_v4p10_OAuthSignature(
246 | $credentials['consumer_key'],
247 | $credentials['consumer_secret']
248 | );
249 | } else {
250 | $this->oauth = null;
251 | }
252 | }
253 |
254 | public function signDownloadUrl($url) {
255 | //Add authentication data to download URLs. Since OAuth signatures incorporate
256 | //timestamps, we have to do this immediately before inserting the update. Otherwise
257 | //authentication could fail due to a stale timestamp.
258 | if ( $this->oauth ) {
259 | $url = $this->oauth->sign($url);
260 | }
261 | return $url;
262 | }
263 | }
264 |
265 | endif;
266 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Vcs/PluginUpdateChecker.php:
--------------------------------------------------------------------------------
1 | api = $api;
27 | $this->api->setHttpFilterName($this->getUniqueName('request_info_options'));
28 |
29 | parent::__construct($api->getRepositoryUrl(), $pluginFile, $slug, $checkPeriod, $optionName, $muPluginFile);
30 |
31 | $this->api->setSlug($this->slug);
32 | }
33 |
34 | public function requestInfo($unusedParameter = null) {
35 | //We have to make several remote API requests to gather all the necessary info
36 | //which can take a while on slow networks.
37 | if ( function_exists('set_time_limit') ) {
38 | @set_time_limit(60);
39 | }
40 |
41 | $api = $this->api;
42 | $api->setLocalDirectory($this->package->getAbsoluteDirectoryPath());
43 |
44 | $info = new Puc_v4p10_Plugin_Info();
45 | $info->filename = $this->pluginFile;
46 | $info->slug = $this->slug;
47 |
48 | $this->setInfoFromHeader($this->package->getPluginHeader(), $info);
49 |
50 | //Pick a branch or tag.
51 | $updateSource = $api->chooseReference($this->branch);
52 | if ( $updateSource ) {
53 | $ref = $updateSource->name;
54 | $info->version = $updateSource->version;
55 | $info->last_updated = $updateSource->updated;
56 | $info->download_url = $updateSource->downloadUrl;
57 |
58 | if ( !empty($updateSource->changelog) ) {
59 | $info->sections['changelog'] = $updateSource->changelog;
60 | }
61 | if ( isset($updateSource->downloadCount) ) {
62 | $info->downloaded = $updateSource->downloadCount;
63 | }
64 | } else {
65 | //There's probably a network problem or an authentication error.
66 | do_action(
67 | 'puc_api_error',
68 | new WP_Error(
69 | 'puc-no-update-source',
70 | 'Could not retrieve version information from the repository. '
71 | . 'This usually means that the update checker either can\'t connect '
72 | . 'to the repository or it\'s configured incorrectly.'
73 | ),
74 | null, null, $this->slug
75 | );
76 | return null;
77 | }
78 |
79 | //Get headers from the main plugin file in this branch/tag. Its "Version" header and other metadata
80 | //are what the WordPress install will actually see after upgrading, so they take precedence over releases/tags.
81 | $mainPluginFile = basename($this->pluginFile);
82 | $remotePlugin = $api->getRemoteFile($mainPluginFile, $ref);
83 | if ( !empty($remotePlugin) ) {
84 | $remoteHeader = $this->package->getFileHeader($remotePlugin);
85 | $this->setInfoFromHeader($remoteHeader, $info);
86 | }
87 |
88 | //Try parsing readme.txt. If it's formatted according to WordPress.org standards, it will contain
89 | //a lot of useful information like the required/tested WP version, changelog, and so on.
90 | if ( $this->readmeTxtExistsLocally() ) {
91 | $this->setInfoFromRemoteReadme($ref, $info);
92 | }
93 |
94 | //The changelog might be in a separate file.
95 | if ( empty($info->sections['changelog']) ) {
96 | $info->sections['changelog'] = $api->getRemoteChangelog($ref, $this->package->getAbsoluteDirectoryPath());
97 | if ( empty($info->sections['changelog']) ) {
98 | $info->sections['changelog'] = __('There is no changelog available.', 'plugin-update-checker');
99 | }
100 | }
101 |
102 | if ( empty($info->last_updated) ) {
103 | //Fetch the latest commit that changed the tag or branch and use it as the "last_updated" date.
104 | $latestCommitTime = $api->getLatestCommitTime($ref);
105 | if ( $latestCommitTime !== null ) {
106 | $info->last_updated = $latestCommitTime;
107 | }
108 | }
109 |
110 | $info = apply_filters($this->getUniqueName('request_info_result'), $info, null);
111 | return $info;
112 | }
113 |
114 | /**
115 | * Check if the currently installed version has a readme.txt file.
116 | *
117 | * @return bool
118 | */
119 | protected function readmeTxtExistsLocally() {
120 | return $this->package->fileExists($this->api->getLocalReadmeName());
121 | }
122 |
123 | /**
124 | * Copy plugin metadata from a file header to a Plugin Info object.
125 | *
126 | * @param array $fileHeader
127 | * @param Puc_v4p10_Plugin_Info $pluginInfo
128 | */
129 | protected function setInfoFromHeader($fileHeader, $pluginInfo) {
130 | $headerToPropertyMap = array(
131 | 'Version' => 'version',
132 | 'Name' => 'name',
133 | 'PluginURI' => 'homepage',
134 | 'Author' => 'author',
135 | 'AuthorName' => 'author',
136 | 'AuthorURI' => 'author_homepage',
137 |
138 | 'Requires WP' => 'requires',
139 | 'Tested WP' => 'tested',
140 | 'Requires at least' => 'requires',
141 | 'Tested up to' => 'tested',
142 |
143 | 'Requires PHP' => 'requires_php',
144 | );
145 | foreach ($headerToPropertyMap as $headerName => $property) {
146 | if ( isset($fileHeader[$headerName]) && !empty($fileHeader[$headerName]) ) {
147 | $pluginInfo->$property = $fileHeader[$headerName];
148 | }
149 | }
150 |
151 | if ( !empty($fileHeader['Description']) ) {
152 | $pluginInfo->sections['description'] = $fileHeader['Description'];
153 | }
154 | }
155 |
156 | /**
157 | * Copy plugin metadata from the remote readme.txt file.
158 | *
159 | * @param string $ref GitHub tag or branch where to look for the readme.
160 | * @param Puc_v4p10_Plugin_Info $pluginInfo
161 | */
162 | protected function setInfoFromRemoteReadme($ref, $pluginInfo) {
163 | $readme = $this->api->getRemoteReadme($ref);
164 | if ( empty($readme) ) {
165 | return;
166 | }
167 |
168 | if ( isset($readme['sections']) ) {
169 | $pluginInfo->sections = array_merge($pluginInfo->sections, $readme['sections']);
170 | }
171 | if ( !empty($readme['tested_up_to']) ) {
172 | $pluginInfo->tested = $readme['tested_up_to'];
173 | }
174 | if ( !empty($readme['requires_at_least']) ) {
175 | $pluginInfo->requires = $readme['requires_at_least'];
176 | }
177 | if ( !empty($readme['requires_php']) ) {
178 | $pluginInfo->requires_php = $readme['requires_php'];
179 | }
180 |
181 | if ( isset($readme['upgrade_notice'], $readme['upgrade_notice'][$pluginInfo->version]) ) {
182 | $pluginInfo->upgrade_notice = $readme['upgrade_notice'][$pluginInfo->version];
183 | }
184 | }
185 |
186 | public function setBranch($branch) {
187 | $this->branch = $branch;
188 | return $this;
189 | }
190 |
191 | public function setAuthentication($credentials) {
192 | $this->api->setAuthentication($credentials);
193 | return $this;
194 | }
195 |
196 | public function getVcsApi() {
197 | return $this->api;
198 | }
199 |
200 | public function getUpdate() {
201 | $update = parent::getUpdate();
202 |
203 | if ( isset($update) && !empty($update->download_url) ) {
204 | $update->download_url = $this->api->signDownloadUrl($update->download_url);
205 | }
206 |
207 | return $update;
208 | }
209 |
210 | public function onDisplayConfiguration($panel) {
211 | parent::onDisplayConfiguration($panel);
212 | $panel->row('Branch', $this->branch);
213 | $panel->row('Authentication enabled', $this->api->isAuthenticationEnabled() ? 'Yes' : 'No');
214 | $panel->row('API client', get_class($this->api));
215 | }
216 | }
217 |
218 | endif;
219 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Vcs/Reference.php:
--------------------------------------------------------------------------------
1 | properties = $properties;
21 | }
22 |
23 | /**
24 | * @param string $name
25 | * @return mixed|null
26 | */
27 | public function __get($name) {
28 | return array_key_exists($name, $this->properties) ? $this->properties[$name] : null;
29 | }
30 |
31 | /**
32 | * @param string $name
33 | * @param mixed $value
34 | */
35 | public function __set($name, $value) {
36 | $this->properties[$name] = $value;
37 | }
38 |
39 | /**
40 | * @param string $name
41 | * @return bool
42 | */
43 | public function __isset($name) {
44 | return isset($this->properties[$name]);
45 | }
46 |
47 | }
48 |
49 | endif;
50 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/Puc/v4p10/Vcs/ThemeUpdateChecker.php:
--------------------------------------------------------------------------------
1 | api = $api;
27 | $this->api->setHttpFilterName($this->getUniqueName('request_update_options'));
28 |
29 | parent::__construct($api->getRepositoryUrl(), $stylesheet, $customSlug, $checkPeriod, $optionName);
30 |
31 | $this->api->setSlug($this->slug);
32 | }
33 |
34 | public function requestUpdate() {
35 | $api = $this->api;
36 | $api->setLocalDirectory($this->package->getAbsoluteDirectoryPath());
37 |
38 | $update = new Puc_v4p10_Theme_Update();
39 | $update->slug = $this->slug;
40 |
41 | //Figure out which reference (tag or branch) we'll use to get the latest version of the theme.
42 | $updateSource = $api->chooseReference($this->branch);
43 | if ( $updateSource ) {
44 | $ref = $updateSource->name;
45 | $update->download_url = $updateSource->downloadUrl;
46 | } else {
47 | do_action(
48 | 'puc_api_error',
49 | new WP_Error(
50 | 'puc-no-update-source',
51 | 'Could not retrieve version information from the repository. '
52 | . 'This usually means that the update checker either can\'t connect '
53 | . 'to the repository or it\'s configured incorrectly.'
54 | ),
55 | null, null, $this->slug
56 | );
57 | $ref = $this->branch;
58 | }
59 |
60 | //Get headers from the main stylesheet in this branch/tag. Its "Version" header and other metadata
61 | //are what the WordPress install will actually see after upgrading, so they take precedence over releases/tags.
62 | $remoteHeader = $this->package->getFileHeader($api->getRemoteFile('style.css', $ref));
63 | $update->version = Puc_v4p10_Utils::findNotEmpty(array(
64 | $remoteHeader['Version'],
65 | Puc_v4p10_Utils::get($updateSource, 'version'),
66 | ));
67 |
68 | //The details URL defaults to the Theme URI header or the repository URL.
69 | $update->details_url = Puc_v4p10_Utils::findNotEmpty(array(
70 | $remoteHeader['ThemeURI'],
71 | $this->package->getHeaderValue('ThemeURI'),
72 | $this->metadataUrl,
73 | ));
74 |
75 | if ( empty($update->version) ) {
76 | //It looks like we didn't find a valid update after all.
77 | $update = null;
78 | }
79 |
80 | $update = $this->filterUpdateResult($update);
81 | return $update;
82 | }
83 |
84 | //FIXME: This is duplicated code. Both theme and plugin subclasses that use VCS share these methods.
85 |
86 | public function setBranch($branch) {
87 | $this->branch = $branch;
88 | return $this;
89 | }
90 |
91 | public function setAuthentication($credentials) {
92 | $this->api->setAuthentication($credentials);
93 | return $this;
94 | }
95 |
96 | public function getVcsApi() {
97 | return $this->api;
98 | }
99 |
100 | public function getUpdate() {
101 | $update = parent::getUpdate();
102 |
103 | if ( isset($update) && !empty($update->download_url) ) {
104 | $update->download_url = $this->api->signDownloadUrl($update->download_url);
105 | }
106 |
107 | return $update;
108 | }
109 |
110 | public function onDisplayConfiguration($panel) {
111 | parent::onDisplayConfiguration($panel);
112 | $panel->row('Branch', $this->branch);
113 | $panel->row('Authentication enabled', $this->api->isAuthenticationEnabled() ? 'Yes' : 'No');
114 | $panel->row('API client', get_class($this->api));
115 | }
116 | }
117 |
118 | endif;
119 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "yahnis-elsts/plugin-update-checker",
3 | "type": "library",
4 | "description": "A custom update checker for WordPress plugins and themes. Useful if you can't host your plugin in the official WP repository but still want it to support automatic updates.",
5 | "keywords": ["wordpress", "plugin updates", "automatic updates", "theme updates"],
6 | "homepage": "https://github.com/YahnisElsts/plugin-update-checker/",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Yahnis Elsts",
11 | "email": "whiteshadow@w-shadow.com",
12 | "homepage": "http://w-shadow.com/",
13 | "role": "Developer"
14 | }
15 | ],
16 | "require": {
17 | "php": ">=5.2.0",
18 | "ext-json": "*"
19 | },
20 | "autoload": {
21 | "files": ["load-v4p10.php"]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/css/puc-debug-bar.css:
--------------------------------------------------------------------------------
1 | .puc-debug-bar-panel-v4 pre {
2 | margin-top: 0;
3 | }
4 |
5 | /* Style the debug data table to match "widefat" table style used by WordPress. */
6 | table.puc-debug-data {
7 | width: 100%;
8 | clear: both;
9 | margin: 0;
10 |
11 | border-spacing: 0;
12 | background-color: #f9f9f9;
13 |
14 | border-radius: 3px;
15 | border: 1px solid #dfdfdf;
16 | border-collapse: separate;
17 | }
18 |
19 | table.puc-debug-data * {
20 | word-wrap: break-word;
21 | }
22 |
23 | table.puc-debug-data th {
24 | width: 11em;
25 | padding: 7px 7px 8px;
26 | text-align: left;
27 |
28 | font-family: "Georgia", "Times New Roman", "Bitstream Charter", "Times", serif;
29 | font-weight: 400;
30 | font-size: 14px;
31 | line-height: 1.3em;
32 | text-shadow: rgba(255, 255, 255, 0.804) 0 1px 0;
33 | }
34 |
35 | table.puc-debug-data td, table.puc-debug-data th {
36 | border-width: 1px 0;
37 | border-style: solid;
38 |
39 | border-top-color: #fff;
40 | border-bottom-color: #dfdfdf;
41 |
42 | text-transform: none;
43 | }
44 |
45 | table.puc-debug-data td {
46 | color: #555;
47 | font-size: 12px;
48 | padding: 4px 7px 2px;
49 | vertical-align: top;
50 | }
51 |
52 | .puc-ajax-response {
53 | border: 1px solid #dfdfdf;
54 | border-radius: 3px;
55 | padding: 0.5em;
56 | margin: 5px 0;
57 | background-color: white;
58 | }
59 |
60 | .puc-ajax-nonce {
61 | display: none;
62 | }
63 |
64 | .puc-ajax-response dt {
65 | margin: 0;
66 | }
67 |
68 | .puc-ajax-response dd {
69 | margin: 0 0 1em;
70 | }
71 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/examples/plugin.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "My Example Plugin",
3 | "version": "2.0",
4 | "download_url": "http://example.com/updates/example-plugin.zip",
5 |
6 | "homepage": "http://example.com/",
7 | "requires": "4.5",
8 | "tested": "4.8",
9 | "last_updated": "2017-01-01 16:17:00",
10 | "upgrade_notice": "Here's why you should upgrade...",
11 |
12 | "author": "Janis Elsts",
13 | "author_homepage": "http://example.com/",
14 |
15 | "sections": {
16 | "description": "(Required) Plugin description. Basic HTML can be used in all sections.",
17 | "installation": "(Recommended) Installation instructions.",
18 | "changelog": "(Recommended) Changelog. This section will be displayed by default when the user clicks 'View version x.y.z details'.
",
19 | "custom_section": "This is a custom section labeled 'Custom Section'."
20 | },
21 |
22 | "icons" : {
23 | "1x" : "http://w-shadow.com/files/external-update-example/assets/icon-128x128.png",
24 | "2x" : "http://w-shadow.com/files/external-update-example/assets/icon-256x256.png"
25 | },
26 |
27 | "banners": {
28 | "low": "http://w-shadow.com/files/external-update-example/assets/banner-772x250.png",
29 | "high": "http://w-shadow.com/files/external-update-example/assets/banner-1544x500.png"
30 | },
31 |
32 | "translations": [
33 | {
34 | "language": "fr_FR",
35 | "version": "4.0",
36 | "updated": "2016-04-22 23:22:42",
37 | "package": "http://example.com/updates/translations/french-language-pack.zip"
38 | },
39 | {
40 | "language": "de_DE",
41 | "version": "5.0",
42 | "updated": "2016-04-22 23:22:42",
43 | "package": "http://example.com/updates/translations/german-language-pack.zip"
44 | }
45 | ],
46 |
47 | "rating": 90,
48 | "num_ratings": 123,
49 |
50 | "downloaded": 1234,
51 | "active_installs": 12345
52 | }
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/examples/theme.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0",
3 | "details_url": "http://example.com/version-2.0-details.html",
4 | "download_url": "http://example.com/example-theme-2.0.zip"
5 | }
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/js/debug-bar.js:
--------------------------------------------------------------------------------
1 | jQuery(function($) {
2 |
3 | function runAjaxAction(button, action) {
4 | button = $(button);
5 | var panel = button.closest('.puc-debug-bar-panel-v4');
6 | var responseBox = button.closest('td').find('.puc-ajax-response');
7 |
8 | responseBox.text('Processing...').show();
9 | $.post(
10 | ajaxurl,
11 | {
12 | action : action,
13 | uid : panel.data('uid'),
14 | _wpnonce: panel.data('nonce')
15 | },
16 | function(data) {
17 | responseBox.html(data);
18 | },
19 | 'html'
20 | );
21 | }
22 |
23 | $('.puc-debug-bar-panel-v4 input[name="puc-check-now-button"]').click(function() {
24 | runAjaxAction(this, 'puc_v4_debug_check_now');
25 | return false;
26 | });
27 |
28 | $('.puc-debug-bar-panel-v4 input[name="puc-request-info-button"]').click(function() {
29 | runAjaxAction(this, 'puc_v4_debug_request_info');
30 | return false;
31 | });
32 |
33 |
34 | // Debug Bar uses the panel class name as part of its link and container IDs. This means we can
35 | // end up with multiple identical IDs if more than one plugin uses the update checker library.
36 | // Fix it by replacing the class name with the plugin slug.
37 | var panels = $('#debug-menu-targets').find('.puc-debug-bar-panel-v4');
38 | panels.each(function() {
39 | var panel = $(this);
40 | var uid = panel.data('uid');
41 | var target = panel.closest('.debug-menu-target');
42 |
43 | //Change the panel wrapper ID.
44 | target.attr('id', 'debug-menu-target-puc-' + uid);
45 |
46 | //Change the menu link ID as well and point it at the new target ID.
47 | $('#debug-bar-menu').find('.puc-debug-menu-link-' + uid)
48 | .closest('.debug-menu-link')
49 | .attr('id', 'debug-menu-link-puc-' + uid)
50 | .attr('href', '#' + target.attr('id'));
51 | });
52 | });
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ca.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ca.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ca.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2019-09-25 18:15+0200\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: ca\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprova si hi ha actualitzacions"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "L’extensió %s està actualitzada."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nova versió de l’extensió %s està disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No s’ha pogut determinar si hi ha actualitzacions per a %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estat del comprovador d’actualitzacions desconegut \"%s\""
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hi ha cap registre de canvis disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-cs_CZ.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-cs_CZ.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-cs_CZ.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "Report-Msgid-Bugs-To: \n"
5 | "POT-Creation-Date: 2017-05-20 10:53+0300\n"
6 | "PO-Revision-Date: 2017-07-05 15:39+0000\n"
7 | "Last-Translator: Vojtěch Sajdl \n"
8 | "Language-Team: Czech (Czech Republic)\n"
9 | "Language: cs-CZ\n"
10 | "Plural-Forms: nplurals=2; plural=(n != 1)\n"
11 | "MIME-Version: 1.0\n"
12 | "Content-Type: text/plain; charset=UTF-8\n"
13 | "Content-Transfer-Encoding: 8bit\n"
14 | "X-Loco-Source-Locale: cs_CZ\n"
15 | "X-Generator: Loco - https://localise.biz/\n"
16 | "X-Poedit-Basepath: ..\n"
17 | "X-Poedit-SourceCharset: UTF-8\n"
18 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
19 | "X-Poedit-SearchPath-0: .\n"
20 | "X-Loco-Parser: loco_parse_po"
21 |
22 | #: Puc/v4p1/Plugin/UpdateChecker.php:358
23 | msgid "Check for updates"
24 | msgstr "Zkontrolovat aktualizace"
25 |
26 | #: Puc/v4p1/Plugin/UpdateChecker.php:405
27 | #, php-format
28 | msgctxt "the plugin title"
29 | msgid "The %s plugin is up to date."
30 | msgstr "Plugin %s je aktuální."
31 |
32 | #: Puc/v4p1/Plugin/UpdateChecker.php:407
33 | #, php-format
34 | msgctxt "the plugin title"
35 | msgid "A new version of the %s plugin is available."
36 | msgstr "Nová verze pluginu %s je dostupná."
37 |
38 | #: Puc/v4p1/Plugin/UpdateChecker.php:409
39 | #, php-format
40 | msgid "Unknown update checker status \"%s\""
41 | msgstr "Neznámý status kontroly aktualizací \"%s\""
42 |
43 | #: Puc/v4p1/Vcs/PluginUpdateChecker.php:83
44 | msgid "There is no changelog available."
45 | msgstr "Changelog není dostupný."
46 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-da_DK.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-da_DK.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-da_DK.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-05-20 10:53+0300\n"
5 | "PO-Revision-Date: 2017-10-17 11:07+0200\n"
6 | "Last-Translator: Mikk3lRo\n"
7 | "Language-Team: Mikk3lRo\n"
8 | "MIME-Version: 1.0\n"
9 | "Content-Type: text/plain; charset=UTF-8\n"
10 | "Content-Transfer-Encoding: 8bit\n"
11 | "X-Generator: Poedit 2.0.4\n"
12 | "X-Poedit-Basepath: ..\n"
13 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14 | "X-Poedit-SourceCharset: UTF-8\n"
15 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
16 | "Language: da_DK\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p1/Plugin/UpdateChecker.php:358
20 | msgid "Check for updates"
21 | msgstr "Undersøg for opdateringer"
22 |
23 | #: Puc/v4p1/Plugin/UpdateChecker.php:405
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "Plugin'et %s er allerede opdateret."
28 |
29 | #: Puc/v4p1/Plugin/UpdateChecker.php:407
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "En ny version af plugin'et %s er tilgængelig."
34 |
35 | #: Puc/v4p1/Plugin/UpdateChecker.php:409
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Ukendt opdateringsstatus: \"%s\""
39 |
40 | #: Puc/v4p1/Vcs/PluginUpdateChecker.php:83
41 | msgid "There is no changelog available."
42 | msgstr "Der er ingen ændringslog tilgængelig."
43 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-de_DE.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-de_DE.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-de_DE.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2016-06-29 20:21+0100\n"
5 | "PO-Revision-Date: 2016-06-29 20:23+0100\n"
6 | "Last-Translator: Igor Lückel \n"
7 | "Language-Team: \n"
8 | "MIME-Version: 1.0\n"
9 | "Content-Type: text/plain; charset=UTF-8\n"
10 | "Content-Transfer-Encoding: 8bit\n"
11 | "X-Generator: Poedit 1.8.1\n"
12 | "X-Poedit-Basepath: ..\n"
13 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14 | "X-Poedit-SourceCharset: UTF-8\n"
15 | "X-Poedit-KeywordsList: __;_e\n"
16 | "Language: de_DE\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: github-checker.php:137
20 | msgid "There is no changelog available."
21 | msgstr "Es ist keine Liste von Programmänderungen verfügbar."
22 |
23 | #: plugin-update-checker.php:852
24 | msgid "Check for updates"
25 | msgstr "Nach Update suchen"
26 |
27 | #: plugin-update-checker.php:896
28 | msgid "This plugin is up to date."
29 | msgstr "Das Plugin ist aktuell."
30 |
31 | #: plugin-update-checker.php:898
32 | msgid "A new version of this plugin is available."
33 | msgstr "Es ist eine neue Version für das Plugin verfügbar."
34 |
35 | #: plugin-update-checker.php:900
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Unbekannter Update Status \"%s\""
39 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_AR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_AR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_AR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:13-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CL.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CL.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CL.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CO.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CO.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CO.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_CR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_DO.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_DO.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_DO.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_ES.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_ES.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_ES.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 14:56-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_GT.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_GT.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_GT.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_HN.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_HN.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_HN.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:14-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_MX.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_MX.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_MX.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 14:57-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PE.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PE.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PE.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:15-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_PR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:15-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_UY.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_UY.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_UY.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 15:15-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_VE.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_VE.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-es_VE.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-03-21 14:57-0400\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.3\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: es_ES\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Comprobar si hay actualizaciones"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "El plugin %s está actualizado."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Una nueva versión del %s plugin está disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "No se pudo determinar si hay actualizaciones disponibles para %s."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Estado del comprobador de actualización desconocido «%s»"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "No hay un registro de cambios disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fa_IR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fa_IR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fa_IR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2016-02-17 14:21+0100\n"
5 | "PO-Revision-Date: 2016-10-28 14:30+0330\n"
6 | "Last-Translator: studio RVOLA \n"
7 | "Language-Team: Pro Style \n"
8 | "Language: fa_IR\n"
9 | "MIME-Version: 1.0\n"
10 | "Content-Type: text/plain; charset=UTF-8\n"
11 | "Content-Transfer-Encoding: 8bit\n"
12 | "X-Generator: Poedit 1.8.8\n"
13 | "X-Poedit-Basepath: ..\n"
14 | "Plural-Forms: nplurals=2; plural=(n > 1);\n"
15 | "X-Poedit-SourceCharset: UTF-8\n"
16 | "X-Poedit-KeywordsList: __;_e\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: github-checker.php:120
20 | msgid "There is no changelog available."
21 | msgstr "شرحی برای تغییرات یافت نشد"
22 |
23 | #: plugin-update-checker.php:637
24 | msgid "Check for updates"
25 | msgstr "بررسی برای بروزرسانی "
26 |
27 | #: plugin-update-checker.php:681
28 | msgid "This plugin is up to date."
29 | msgstr "شما از آخرین نسخه استفاده میکنید . بهروز باشید"
30 |
31 | #: plugin-update-checker.php:683
32 | msgid "A new version of this plugin is available."
33 | msgstr "نسخه جدیدی برای افزونه ارائه شده است ."
34 |
35 | #: plugin-update-checker.php:685
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "وضعیت ناشناخته برای بروزرسانی \"%s\""
39 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_CA.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_CA.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_CA.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2018-02-12 10:32-0500\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.0.4\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n > 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: Eric Gagnon \n"
16 | "Language: fr_CA\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Vérifier les mises à jour"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "L’extension %s est à jour."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Une nouvelle version de l’extension %s est disponible."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "Impossible de déterminer si une mise à jour est disponible pour \"%s\""
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Un problème inconnu est survenu \"%s\""
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "Il n’y a aucun journal de mise à jour disponible."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_FR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_FR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-fr_FR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-07-07 14:53+0200\n"
5 | "PO-Revision-Date: 2017-07-07 14:54+0200\n"
6 | "Language-Team: studio RVOLA \n"
7 | "Language: fr_FR\n"
8 | "MIME-Version: 1.0\n"
9 | "Content-Type: text/plain; charset=UTF-8\n"
10 | "Content-Transfer-Encoding: 8bit\n"
11 | "X-Generator: Poedit 2.0.2\n"
12 | "X-Poedit-Basepath: ..\n"
13 | "Plural-Forms: nplurals=2; plural=(n > 1);\n"
14 | "X-Poedit-SourceCharset: UTF-8\n"
15 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
16 | "Last-Translator: Nicolas GEHIN\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p1/Plugin/UpdateChecker.php:358
20 | msgid "Check for updates"
21 | msgstr "Vérifier les mises à jour"
22 |
23 | #: Puc/v4p1/Plugin/UpdateChecker.php:405
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "L’extension %s est à jour."
28 |
29 | #: Puc/v4p1/Plugin/UpdateChecker.php:407
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Une nouvelle version de l’extension %s est disponible."
34 |
35 | #: Puc/v4p1/Plugin/UpdateChecker.php:409
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Un problème inconnu est survenu \"%s\""
39 |
40 | #: Puc/v4p1/Vcs/PluginUpdateChecker.php:85
41 | msgid "There is no changelog available."
42 | msgstr "Il n’y a aucun journal de mise à jour disponible."
43 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-hu_HU.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-hu_HU.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-hu_HU.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2016-01-11 21:23+0100\n"
5 | "PO-Revision-Date: 2016-01-11 21:25+0100\n"
6 | "Last-Translator: Tamás András Horváth \n"
7 | "Language-Team: \n"
8 | "Language: hu_HU\n"
9 | "MIME-Version: 1.0\n"
10 | "Content-Type: text/plain; charset=UTF-8\n"
11 | "Content-Transfer-Encoding: 8bit\n"
12 | "X-Generator: Poedit 1.8.6\n"
13 | "X-Poedit-Basepath: ..\n"
14 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15 | "X-Poedit-SourceCharset: UTF-8\n"
16 | "X-Poedit-KeywordsList: __;_e\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: github-checker.php:137
20 | msgid "There is no changelog available."
21 | msgstr "Nem érhető el a changelog."
22 |
23 | #: plugin-update-checker.php:852
24 | msgid "Check for updates"
25 | msgstr "Frissítés ellenőrzése"
26 |
27 | #: plugin-update-checker.php:896
28 | msgid "This plugin is up to date."
29 | msgstr "Ez a plugin naprakész."
30 |
31 | #: plugin-update-checker.php:898
32 | msgid "A new version of this plugin is available."
33 | msgstr "Új verzió érhető el a kiegészítőhöz"
34 |
35 | #: plugin-update-checker.php:900
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Ismeretlen a frissítés ellenőrző státusza \"%s\""
39 |
40 | #~ msgid "Every %d hours"
41 | #~ msgstr "Minden %d órában"
42 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-it_IT.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-it_IT.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-it_IT.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2016-06-29 20:21+0100\n"
5 | "PO-Revision-Date: 2017-01-15 12:24+0100\n"
6 | "Last-Translator: Igor Lückel \n"
7 | "Language-Team: \n"
8 | "MIME-Version: 1.0\n"
9 | "Content-Type: text/plain; charset=UTF-8\n"
10 | "Content-Transfer-Encoding: 8bit\n"
11 | "X-Generator: Poedit 1.5.5\n"
12 | "X-Poedit-Basepath: ..\n"
13 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14 | "X-Poedit-SourceCharset: UTF-8\n"
15 | "X-Poedit-KeywordsList: __;_e\n"
16 | "Language: de_DE\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: github-checker.php:137
20 | msgid "There is no changelog available."
21 | msgstr "Non c'è alcuna sezione di aggiornamento disponibile"
22 |
23 | #: plugin-update-checker.php:852
24 | msgid "Check for updates"
25 | msgstr "Verifica aggiornamenti"
26 |
27 | #: plugin-update-checker.php:896
28 | msgid "This plugin is up to date."
29 | msgstr "Il plugin è aggiornato"
30 |
31 | #: plugin-update-checker.php:898
32 | msgid "A new version of this plugin is available."
33 | msgstr "Una nuova versione del plugin è disponibile"
34 |
35 | #: plugin-update-checker.php:900
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Si è verificato un problema sconosciuto \"%s\""
39 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ja.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ja.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-ja.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: \n"
4 | "POT-Creation-Date: 2019-07-15 17:07+0900\n"
5 | "PO-Revision-Date: 2019-07-15 17:12+0900\n"
6 | "Last-Translator: tak \n"
7 | "Language-Team: \n"
8 | "Language: ja_JP\n"
9 | "MIME-Version: 1.0\n"
10 | "Content-Type: text/plain; charset=UTF-8\n"
11 | "Content-Transfer-Encoding: 8bit\n"
12 | "X-Generator: Poedit 2.2.3\n"
13 | "X-Poedit-Basepath: ../../../../../../Applications/XAMPP/xamppfiles/htdocs/"
14 | "kisagai/wordpress/wp-content/plugins/simple-stripe-gateway/Puc\n"
15 | "Plural-Forms: nplurals=1; plural=0;\n"
16 | "X-Poedit-KeywordsList: __;_x:1,2c\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: v4p7/Plugin/Ui.php:54
20 | msgid "View details"
21 | msgstr "詳細を表示"
22 |
23 | #: v4p7/Plugin/Ui.php:77
24 | #, php-format
25 | msgid "More information about %s"
26 | msgstr "%sについての詳細"
27 |
28 | #: v4p7/Plugin/Ui.php:128
29 | msgid "Check for updates"
30 | msgstr "アップデートを確認"
31 |
32 | #: v4p7/Plugin/Ui.php:213
33 | #, php-format
34 | msgctxt "the plugin title"
35 | msgid "The %s plugin is up to date."
36 | msgstr "%s プラグインは、最新バージョンです。"
37 |
38 | #: v4p7/Plugin/Ui.php:215
39 | #, php-format
40 | msgctxt "the plugin title"
41 | msgid "A new version of the %s plugin is available."
42 | msgstr "%s プラグインの最新バージョンがあります。"
43 |
44 | #: v4p7/Plugin/Ui.php:217
45 | #, php-format
46 | msgctxt "the plugin title"
47 | msgid "Could not determine if updates are available for %s."
48 | msgstr "%s のアップデートがあるかどうかを判断できませんでした。"
49 |
50 | #: v4p7/Plugin/Ui.php:223
51 | #, php-format
52 | msgid "Unknown update checker status \"%s\""
53 | msgstr "バージョンアップの確認で想定外の状態になりました。ステータス:”%s”"
54 |
55 | #: v4p7/Vcs/PluginUpdateChecker.php:98
56 | msgid "There is no changelog available."
57 | msgstr "更新履歴はありません。"
58 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_BE.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_BE.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_BE.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2018-03-25 18:15+0200\n"
5 | "PO-Revision-Date: 2018-03-25 18:32+0200\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 1.8.7.1\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: Frank Goossens \n"
16 | "Language: nl_BE\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Controleer op nieuwe versies"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "De meest recente %s versie is geïnstalleerd."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Er is een nieuwe versie van %s beschikbaar."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "Kon niet bepalen of er nieuwe versie van %s beschikbaar is."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Ongekende status bij controle op nieuwe versie: \"%s\""
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "Er is geen changelog beschikbaar."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_NL.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_NL.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-nl_NL.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2018-03-25 18:15+0200\n"
5 | "PO-Revision-Date: 2018-03-25 18:32+0200\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 1.8.7.1\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: Frank Goossens \n"
16 | "Language: nl_NL\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Controleer op nieuwe versies"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "De meest recente %s versie is geïnstalleerd."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Er is een nieuwe versie van %s beschikbaar."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "Kon niet bepalen of er nieuwe versie van %s beschikbaar is."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Ongekende status bij controle op nieuwe versie: \"%s\""
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "Er is geen changelog beschikbaar."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-pt_BR.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-pt_BR.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-pt_BR.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-05-19 15:41-0300\n"
5 | "PO-Revision-Date: 2017-05-19 15:42-0300\n"
6 | "Last-Translator: \n"
7 | "Language-Team: \n"
8 | "Language: pt_BR\n"
9 | "MIME-Version: 1.0\n"
10 | "Content-Type: text/plain; charset=UTF-8\n"
11 | "Content-Transfer-Encoding: 8bit\n"
12 | "X-Generator: Poedit 1.8.8\n"
13 | "X-Poedit-Basepath: ..\n"
14 | "Plural-Forms: nplurals=2; plural=(n > 1);\n"
15 | "X-Poedit-SourceCharset: UTF-8\n"
16 | "X-Poedit-KeywordsList: __;_e;_x;_x:1,2c\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p1/Plugin/UpdateChecker.php:358
20 | msgid "Check for updates"
21 | msgstr "Verificar Atualizações"
22 |
23 | #: Puc/v4p1/Plugin/UpdateChecker.php:401 Puc/v4p1/Plugin/UpdateChecker.php:406
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "O plugin %s já está na sua versão mais recente."
28 |
29 | #: Puc/v4p1/Plugin/UpdateChecker.php:408
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Há uma nova versão para o plugin %s disponível para download."
34 |
35 | #: Puc/v4p1/Plugin/UpdateChecker.php:410
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Status \"%s\" desconhecido."
39 |
40 | #: Puc/v4p1/Vcs/PluginUpdateChecker.php:83
41 | msgid "There is no changelog available."
42 | msgstr "Não há um changelog disponível."
43 |
44 | #~ msgid "The %s plugin is up to date."
45 | #~ msgstr "O plugin %s já está na sua versão mais recente."
46 |
47 | #~ msgid "A new version of the %s plugin is available."
48 | #~ msgstr "Há uma nova versão para o plugin %s disponível para download."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sl_SI.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sl_SI.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sl_SI.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2018-10-27 20:36+0200\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.2\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100>=3 && n%100<=4 ? 2 : 3);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: Igor Funa\n"
16 | "Language: sl_SI\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "Preveri posodobitve"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "Vtičnik %s je že posodobljen."
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Nova različica vtičnika %s je na razpolago."
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "Ne morem ugotoviti če se za vtičnik %s na razpolago posodobitve."
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "Neznan status preverjanja posodobitev za \"%s\""
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "Dnevnik sprememb ni na razpolago."
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sv_SE.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sv_SE.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-sv_SE.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-05-20 10:53+0300\n"
5 | "PO-Revision-Date: 2017-10-16 15:02+0200\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.0.4\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: \n"
16 | "Language: sv_SE\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p1/Plugin/UpdateChecker.php:358
20 | msgid "Check for updates"
21 | msgstr "Sök efter uppdateringar"
22 |
23 | #: Puc/v4p1/Plugin/UpdateChecker.php:405
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "Tillägget %s är uppdaterat."
28 |
29 | #: Puc/v4p1/Plugin/UpdateChecker.php:407
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "Det finns en ny version av tillägget %s."
34 |
35 | #: Puc/v4p1/Plugin/UpdateChecker.php:409
36 | #, php-format
37 | msgid "Unknown update checker status \"%s\""
38 | msgstr "Okänd status för kontroll av uppdatering “%s”"
39 |
40 | #: Puc/v4p1/Vcs/PluginUpdateChecker.php:83
41 | msgid "There is no changelog available."
42 | msgstr "Det finns ingen ändringslogg tillgänglig."
43 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-zh_CN.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/joppuyo/disable-drop-cap/4137364e78b33f22521c30781340a7c554b592cc/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-zh_CN.mo
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker-zh_CN.po:
--------------------------------------------------------------------------------
1 | msgid ""
2 | msgstr ""
3 | "Project-Id-Version: plugin-update-checker\n"
4 | "POT-Creation-Date: 2017-11-24 17:02+0200\n"
5 | "PO-Revision-Date: 2020-08-04 08:10+0800\n"
6 | "Language-Team: \n"
7 | "MIME-Version: 1.0\n"
8 | "Content-Type: text/plain; charset=UTF-8\n"
9 | "Content-Transfer-Encoding: 8bit\n"
10 | "X-Generator: Poedit 2.4\n"
11 | "X-Poedit-Basepath: ..\n"
12 | "Plural-Forms: nplurals=1; plural=0;\n"
13 | "X-Poedit-SourceCharset: UTF-8\n"
14 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
15 | "Last-Translator: Seaton Jiang \n"
16 | "Language: zh_CN\n"
17 | "X-Poedit-SearchPath-0: .\n"
18 |
19 | #: Puc/v4p3/Plugin/UpdateChecker.php:395
20 | msgid "Check for updates"
21 | msgstr "检查更新"
22 |
23 | #: Puc/v4p3/Plugin/UpdateChecker.php:548
24 | #, php-format
25 | msgctxt "the plugin title"
26 | msgid "The %s plugin is up to date."
27 | msgstr "%s 目前是最新版本。"
28 |
29 | #: Puc/v4p3/Plugin/UpdateChecker.php:550
30 | #, php-format
31 | msgctxt "the plugin title"
32 | msgid "A new version of the %s plugin is available."
33 | msgstr "%s 当前有可用的更新。"
34 |
35 | #: Puc/v4p3/Plugin/UpdateChecker.php:552
36 | #, php-format
37 | msgctxt "the plugin title"
38 | msgid "Could not determine if updates are available for %s."
39 | msgstr "%s 无法确定是否有可用的更新。"
40 |
41 | #: Puc/v4p3/Plugin/UpdateChecker.php:558
42 | #, php-format
43 | msgid "Unknown update checker status \"%s\""
44 | msgstr "未知的更新检查状态:%s"
45 |
46 | #: Puc/v4p3/Vcs/PluginUpdateChecker.php:95
47 | msgid "There is no changelog available."
48 | msgstr "没有可用的更新日志。"
49 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/languages/plugin-update-checker.pot:
--------------------------------------------------------------------------------
1 | #, fuzzy
2 | msgid ""
3 | msgstr ""
4 | "Project-Id-Version: plugin-update-checker\n"
5 | "POT-Creation-Date: 2020-08-08 14:36+0300\n"
6 | "PO-Revision-Date: 2016-01-10 20:59+0100\n"
7 | "Last-Translator: Tamás András Horváth \n"
8 | "Language-Team: \n"
9 | "Language: en_US\n"
10 | "MIME-Version: 1.0\n"
11 | "Content-Type: text/plain; charset=UTF-8\n"
12 | "Content-Transfer-Encoding: 8bit\n"
13 | "X-Generator: Poedit 2.4\n"
14 | "X-Poedit-Basepath: ..\n"
15 | "Plural-Forms: nplurals=2; plural=(n != 1);\n"
16 | "X-Poedit-SourceCharset: UTF-8\n"
17 | "X-Poedit-KeywordsList: __;_e;_x:1,2c;_x\n"
18 | "X-Poedit-SearchPath-0: .\n"
19 |
20 | #: Puc/v4p10/Plugin/Ui.php:128
21 | msgid "Check for updates"
22 | msgstr ""
23 |
24 | #: Puc/v4p10/Plugin/Ui.php:213
25 | #, php-format
26 | msgctxt "the plugin title"
27 | msgid "The %s plugin is up to date."
28 | msgstr ""
29 |
30 | #: Puc/v4p10/Plugin/Ui.php:215
31 | #, php-format
32 | msgctxt "the plugin title"
33 | msgid "A new version of the %s plugin is available."
34 | msgstr ""
35 |
36 | #: Puc/v4p10/Plugin/Ui.php:217
37 | #, php-format
38 | msgctxt "the plugin title"
39 | msgid "Could not determine if updates are available for %s."
40 | msgstr ""
41 |
42 | #: Puc/v4p10/Plugin/Ui.php:223
43 | #, php-format
44 | msgid "Unknown update checker status \"%s\""
45 | msgstr ""
46 |
47 | #: Puc/v4p10/Vcs/PluginUpdateChecker.php:98
48 | msgid "There is no changelog available."
49 | msgstr ""
50 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/license.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2017 Jānis Elsts
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4 |
5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/load-v4p10.php:
--------------------------------------------------------------------------------
1 | 'Puc_v4p10_Plugin_UpdateChecker',
12 | 'Theme_UpdateChecker' => 'Puc_v4p10_Theme_UpdateChecker',
13 |
14 | 'Vcs_PluginUpdateChecker' => 'Puc_v4p10_Vcs_PluginUpdateChecker',
15 | 'Vcs_ThemeUpdateChecker' => 'Puc_v4p10_Vcs_ThemeUpdateChecker',
16 |
17 | 'GitHubApi' => 'Puc_v4p10_Vcs_GitHubApi',
18 | 'BitBucketApi' => 'Puc_v4p10_Vcs_BitBucketApi',
19 | 'GitLabApi' => 'Puc_v4p10_Vcs_GitLabApi',
20 | )
21 | as $pucGeneralClass => $pucVersionedClass
22 | ) {
23 | Puc_v4_Factory::addVersion($pucGeneralClass, $pucVersionedClass, '4.10');
24 | //Also add it to the minor-version factory in case the major-version factory
25 | //was already defined by another, older version of the update checker.
26 | Puc_v4p10_Factory::addVersion($pucGeneralClass, $pucVersionedClass, '4.10');
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/vendor/yahnis-elsts/plugin-update-checker/plugin-update-checker.php:
--------------------------------------------------------------------------------
1 | =') ) {
5 | require __DIR__ . '/ParsedownModern.php';
6 | } else {
7 | require __DIR__ . '/ParsedownLegacy.php';
8 | }
9 | }
10 |
--------------------------------------------------------------------------------