diff --git a/functions.php b/functions.php index d83dd81..1d12060 100644 --- a/functions.php +++ b/functions.php @@ -20,9 +20,8 @@ function load_modules() { if (get_option('pasw_eulaw') != 0) { require ( get_template_directory() . '/include/moduli/pasw2015-eulaw.php' ); } if (get_option('pasw_post_tpl') != 0) { require ( get_template_directory() . '/include/moduli/pasw2015-post-templates.php' ); } } -add_action('admin_init', "reg_set_p"); - -function reg_set_p() { +add_action('admin_init', function() { + require (get_template_directory() . '/include/moduli-pasw2015.php' ); register_setting( 'pasw2015_options', 'pasw_social'); @@ -73,14 +72,13 @@ function reg_set_p() { wp_safe_redirect(admin_url('/admin.php?page=pasw2015', 'http'), 301); } -} +} ); -add_action('admin_notices', 'pasw_admin_messages'); -function pasw_admin_messages() {; +add_action('admin_notices', function() { - if ( isset($_GET['pasw2015alert'])) { - update_option( 'pasw2015_versionalert', '0' ); - } + if ( isset($_GET['pasw2015alert'])) { + update_option( 'pasw2015_versionalert', '0' ); + } if ( get_option('pasw2015_versionalert') == '1.6.6') { echo ' @@ -93,7 +91,7 @@ function pasw_admin_messages() {;

'; } -} +} ); add_action( 'after_setup_theme', 'pasw2015_setup' ); add_action('admin_notices', 'pasw_alerts'); diff --git a/github/CHANGES.md b/github/CHANGES.md deleted file mode 100644 index 5179326..0000000 --- a/github/CHANGES.md +++ /dev/null @@ -1,428 +0,0 @@ -#### 4.6.2 -* refactor remote update services to new `class Remote_Update` -* general security fixes, don't call files directly... -* fix/test for remote updating via InfiniteWP. Child themes are not identified by IWP as needing updates, otherwise it seems to work as expected. - -#### 4.6.1 -* fix for remote updating via iThemes Sync -* fix for renaming when AJAX updating of plugins - -#### 4.6.0 -* newer, much more precise method for renaming based upon selected repos from the dashboard. Yes, I tested on staging server. :-) -* added feature to use extended naming of plugin directories to avoid potential conflict with WP.org slugs. Props @reinink for the idea. -* strip `.git` from the end of the plugin or theme URI for those who haven't gotten to the README yet. -* added javascript show/hide options on the Install page. -* fixed boolean logic to _not_ display GitLab Private Token input on Install if it's already set. -* updated screenshots in README -* switched a number of methods to be non-static, anticipation of testing. -* [broken: renaming during updates from upgrade services](https://github.com/afragen/github-updater/issues/262) - -#### 4.5.7 -* hotfix GitLab private updating/installing -* fix some PHP notices - -#### 4.5.6 -* bugfix for renaming code to properly strip `-` -* most of Russian translation by [Anatoly Yumashev](https://github.com/yumashev) - -#### 4.5.5 -* back to simplifying the renaming code, always remember to test renaming on live server. -* strip `-` and `-` from beginning and end of update for more precise renaming -* I think this is the end of renaming for a while. :P - -#### 4.5.4 -* hotfix for renaming, I reverted back a bunch with more extensive testing on server. It's amazing how different renaming is locally vs on server. - -#### 4.5.3 -* updated language files -- oops - -#### 4.5.2 -* cleanup and refactor of renaming code. -* added Romanian translation by [Corneliu Cirlan](https://github.com/corneliucirlan) -* added Japanese translation by [ishihara](https://github.com/1shiharat) - -#### 4.5.1 -* fix bug so updates display without having to randomly refresh. - -#### 4.5.0 -* fix some PHP notices -* add update by GitHub release asset in lieu of update by tag when asset is present -* install asset via remote install if asset URI used -* refactor to simplify class structure, created `abstract class API` and `class Messages` -* add GitLab support!! -* refactor to set all git servers and extra headers to static arrays in `Base` -* remove checkbox when loaded as mu-plugin, props @pbearne - -#### 4.4.0 -* only add custom user agent once :P -* add support of GitHub Enterprise via new `GitHub Enterprise` header -* sanitize filter input -* add support for parsing `readme.txt` for _View details_ information using `WordPress_Plugin_Readme_Parser` by @markjaquith -* fixed _View details_ link to show for all cases when plugin using GitHub Updater -* refactor creation of header parts and URIs - -#### 4.3.1 -* Spanish translation by [Jose Miguel Bejarano](https://github.com/xDae) -* German translation by [Linus Metzler](https://github.com/limenet) -* squish PHP notices -* add custom user agent to `wp_remote_get` and tweak error message at request of GitHub ;-) -* fixed edge case renaming bug - -#### 4.3.0 -* use @WPUpdatePhp `class WPUpdatePhp` for PHP version checking -* use https://api.wordpress.org not http -* Arabic translation by [Hyyan Abo FAkher](https://github.com/hyyan) -* make strings better for translation - thanks @pedro-mendonca and @fxbenard -* additional Portuguese translation by [Pedro Mendonça](https://github.com/pedro-mendonca) -* refactor for getting local plugin and theme meta, now simpler for additional APIs (I'm thinking about you GitLab) -* fix link in README to GitHub Link -* correctly pass array as last argument in `add_settings_field` -* add focus to URI input field -* add Setting for personal GitHub Access Token to avoid API rate limit - thanks @mlteal -* add Setting for branch switching from the Plugins page -* add 'View details' link in Plugins page - -#### 4.2.2 -* fix POT and some updated languages, thanks @fxbenard -* fix PHP notice for `$options` settings on initial install - thanks @benosman - -#### 4.2.1 -* add PHP version check for graceful exit -* add to error message for 401 error. -* save settings when remote installing a private repo - -#### 4.2.0 -* added minutes until reset of GitHub API's rate limit to error message -* added `placeholder = "master"` to remote install branch text input -* I should have made the last version 4.2.0 as I added a new feature. I'll try to be better with semantic versioning in the future. ;-) - -#### 4.1.4 -* add message to certain admin pages when API returns HTTP error code -* update POT to remove HTML entity codes from strings and generally try to make i18n better -* Swedish translation by [Andréas Lundgren](https://github.com/Adevade) -* added logo to README and Settings page - -#### 4.1.3 -* use `strtolower` comparison of plugin directory and repo name. This might is an issue related to the manual installation of a plugin before any update might occur. This allows the **View details** screen to display in these instances where the case of the directory and repo aren't identical. This doesn't work for themes. - -#### 4.1.2 -* hide star ratings from **View details** screen for private repos - -#### 4.1.1 -* add `plugin` to `$response` in `Plugin::pre_set_site_transient_update_plugins` to fix PHP Notice -* rename `classes` to `src` to follow more conventional naming -* refactor renaming code to function under all circumstances, I hope ;-) - -#### 4.1.0 -* added remote installation of plugins or themes, both public and private -* remote installation using either full URI or short `` format -* created new tabbed interface for settings -* added another screenshot to readme -* I'd like to apologize to all my translators for adding new strings often, you guys are great, thanks! - -#### 4.0.1 -* hotfix to force an array type when sanitizing settings, it gave me a fatal I wasn't expecting. - -#### 4.0.0 -* changed `is_a()` to `instanceof` per https://core.trac.wordpress.org/changeset/31188 -* requires PHP 5.3 or greater as autoloader class requires namespacing
 -* updated all classes for namespacing -* renamed directory and class names to allow for PSR 4 style loading
 -* clean up a number of foreach loops where I was only using either key or value, not both -* Special thanks for all my translators, especially @grappler for adding translation key for description -* bugfix to correctly pick CHANGES.MD or CHANGELOG.MD regardless of case -* removed reading/saving `GitHub Access Token` header into settings. Must use Settings Page. - -#### 3.2.3 - 3.2.6 -* added French translation by @daniel-menard -* added Italian translation by @overclokk -* added Portuguese translation by @valeriosouza -* added Ukrainian translation by @andriiryzhkov (our first translation!!) - -#### 3.2.2 -* remove scraping of user/pass from Bitbucket URI as it's no longer needed -* use `Requires WP` header to fill view options detail -* rename private methods to begin with underscore -* add screenshot to README for Settings Page (only 70 kB) -* stop re-creating transient of transients if it already exists - -#### 3.2.1 -* refactored adding extra headers to `class GitHub_Updater` to ensure they're added before they're needed, resolves issue with WooThemes Updater plugin -* update .pot file - -#### 3.2.0 -* changed settings page and how Bitbucket Private repos authenticate with your username/password -* update .pot - -#### 3.1.1 -* minor transient cleanup -* update .pot file -* fix to get all themes under both single and multisite installs - -#### 3.1.0 -* woot!! - updating from Bitbucket private repos now works!! -* fix to only add HTTP Authentication header under correct circumstances. This obviates need to fix for other APIs that might also use HTTP Authentication. -* fix to correctly add GitHub Access Token from `$options` to `$download_link` - oops -* changes `$options` to `private static $options` to save a few database calls -* Settings page **only** shows private repos, except for initial setup -* simpler test for checking branch as download endpoint -* correctly use `parent::` instead of `self::` -* many updates for translation -* fix to ensure theme rollback and updating works in both single install and multisite -* fix to save settings from single site installations - -#### 3.0.7 -* more efficient solution to HTTP Authentication issues -* more efficient options cleanup -* remove some unnecessary code resulting in few database calls -* change default option setting to use `add_site_option` so not autoloading options - -#### 3.0.6 -* fix for other APIs that use HTTP Authentication, like JetPack - thanks @tsquez - -#### 3.0.5 -* fix more PHP Notices -* correctly set defaults for Settings page :P -* remove options for plugins/themes that are no longer present - -#### 3.0.4 -* Who would've thought `file_exists` was case-sensitive -* when checking meta, use `empty()` instead of `! isset()` for `null array` -* set defaults for Settings page -* fix a number of PHP Notices - -#### 3.0.3 -* Bugfix to properly authenticate on JetPack Stats page - -#### 3.0.2 -* simplify check and exit on Settings if no Bitbucket plugins/themes - -#### 3.0.1 -* Remove Bitbucket settings from page if no appropriate plugins or themes exist. - -#### 3.0.0 -* Settings Page for your GitHub Access Tokens -* added POT file and some more i18n fixes - thanks @grappler -* added `Requires WP` and `Requires PHP` headers to set minimum version requirements - for @GaryJ -* move update check to function to also check WP and PHP version requirements. -* unset any HTTP Authorization headers for GitHub API calls as this gives a 401 error. Rare potential bug if you have private Bitbucket repos. - -#### 2.9.0 -* move instantiation of `class GitHub_Plugin_Updater` and `class GitHub_Theme_Updater` into `GitHub_Updater::init()` and restrict to `current_user_can( 'update_plugins' )` and `current_user_can( 'update_themes' )` so that non-privileged users don't incur load time. -* now loading classes via `spl_autoload_register` -* switched to `erusev/parsedown` for rendering changelogs, faster and more light-weight. -* now parses remote file info to save only file headers to transient. Hopefully speeds up database retrieval of transient. -* added README link to GitHub Link plugin by @szepeviktor -* added mu-plugin option and instructions. -* above revisions mostly due to @szepeviktor prodding me. ;-) -* accept `CHANGES.md` or `CHANGELOG.md` for processing, for @GaryJ -* composer support added, thanks @hyyan - -#### 2.8.1 -* fix for WP Coding Guidelines -* added check for upgrade process instead of `$_GET['action']` (props @SLv99) -* launch classes from `GitHub_Updater::init()` so can load in `add_action( 'init', ...` from `__construct()`. Hopefully this will solve issues with remote upgraders like iThemes Sync, ManageWP, InfiniteWP, and MainWP. Thanks @jazzsequence for testing. Thanks @SLv99 for bringing this to my attention. - -#### 2.8.0 -* refactor API classes and `class GitHub_Updater` to add extra headers from API class. This should allow for better abstraction. Just need to call `GitHub_Updater_{repo}_API::add_headers()` in `class GitHub_Plugin_Updater` and `class GitHub_ Theme_Updater`. -* remove @since tags -* move `maybe_authenticate_http` to `class GitHub_Updater_Bitbucket_API` as it's not used elsewhere -* use non-strict check for http response code (thanks @echav) - -#### 2.7.1 -* added early exit if no local `CHANGES.md` file exists. This should save an API call. -* pull update from WP.org if plugin hosted in WP.org and branch is `master`. - -#### 2.7.0 -* created functions for getting and setting transients -* added deletion of all transients if _force-check_ is used -* removed `GitHub Timeout` and `Bitbucket Timeout` headers -* fix for `wp_remote_retrieve_response_code` check -* give Seth Carstens proper credit in README.md -* move `function make_rating` to `class GitHub_Updater` -* fix for plugin name in update detail view -* fix for Bitbucket repo with no branch tag -* set default timeout to 12 hours, same as WP.org -* fix for 3.9 setting theme update details to `display:none;` -* fix for error when installing themes from WP.org repo -* fix for incorrect plugin upgrade link in detail popup - -#### 2.6.3 -* quick error checking fix for `wp_remote_get` error to wordpress.org API - thanks @deckerweb - -#### 2.6.1 -* fixed CHANGES.md for GFM strike-through - -#### 2.6.0 -* added transient to `plugins_api` call -* better zeroing of variables in getting local theme data -* add error checking to loading of classes -* set default transient timeout to 4 hours -* added new header `GitHub Timeout` or `Bitbucket Timeout` to set individual plugin/theme transient timeout -* ~~fixed for Bitbucket private repos~~ -* abide by WP Coding Guidelines, esp. for braces -* more error checking for correct variable fetch -* added graceful exit if repo does not exist - -#### 2.5.0 -* added `class GitHub_Updater_Bitbucket_API` for Bitbucket hosted plugins and themes. -* improvements to efficiency by not loading when `DOING_AJAX` -* improvements to efficiency in use of transients - -#### 2.4.5 -* set PHP MarkdownExtra posts and comments markup to false props @MikeHansonMe -* remove WP plugin header from `markdown.php` - -#### 2.4.4 -* forgot to include markdown.php - damn - -#### 2.4.2 -* removed PHP Markdown Lib as it required PHP >= 5.3 and that's higher than required by WordPress core. - -#### 2.4.1 -* switched from PHP Markdown Classic to the new PHP Markdown Lib to prevent collisions with other plugins, like Markdown On Save/Improved that also load PHP Markdown or PHP MarkdownExtra. - -#### 2.4.0 -* fixed transient assignment for tags returning empty array. -* added transient for `CHANGES.md` to themes, should further cut down on API 403 errors. -* new feature: theme rollback to previous version thanks @scarstens -* changed update methodology to use most recent tag first. If not tagged update from default branch. - -#### 2.3.3 -* fixed download link to have correct base URI for Repository Contents API. Oops. - -#### 2.3.2 -* rewrite of `GitHub_Update_GitHub_API::construct_download_link` to download zipball and provide appropriate endpoint. - -#### 2.3.1 -* now saving transient and adding early return if API returns 404, this should speed up plugin when repo doesn't have `CHANGES.md` file and provide for early return in no tags have been created. If no tags have been created the API is still hit. - -#### 2.3.0 -* moved action hook to remove `after_theme_row_$stylesheet` to `class GitHub_Theme_Updater` -* added feature: if branch other than `master` is specified then tagged version will be ignored. This should make it much easier for beta testing to groups. See [README.md](https://github.com/afragen/github-updater/blob/develop/README.md) -* converted `class GitHub_Update_GitHub_API` to extension of `class GitHub_Updater` -* combined `description` and `changelog` to show in theme detail view. Rough formatting. Multisite only. -* greatly simplified bug fix from 2.2.2, now using Themes API. - -#### 2.2.2 -* bug fix for removing update notice for WP.org repo themes. Oops. - -#### 2.2.1 -* minor code simplifications -* many thanks to @grappler for solving how to remove default `after_theme_row_$stylesheet` - -#### 2.2.0 -* moved check and load for `markdown.php` into only function that uses it. -* minor README updates -* added abort if this plugin called directly -* added additional data to update available screen in both plugins and themes - issue #8 -* removed requirement for tags in theme updating -* removed extra line endings from `remote_version` -* added ratings function for creating star ratings based upon GitHub repo data. -* bring parts of `class GitHub_Theme_Updater` code on par with `class GitHub_Plugin_Updater` -* added 'ghu-' prefix to transients -* ripped out theme rollback code. Moved to it's own branch on GitHub. -* add custom `after_theme_update_{$stylesheet}` detail. - -#### 2.1.1 -* bug fix to return early from call to `plugins_api` if not getting plugin information. Fixes issue with Plugin Search. - -#### 2.1.0 -* simplify check for `class Markdown_Parser` -* refactor to pass `class GitHub_Update_GitHub_API` as class object. This should enable the creation of other class objects for Bitbucket, etc. -* fix for setting branch when API not responding -* fix for setting download link when API not responding -* redesigned filter for setting transient timeout, but still not working (pull requests welcome) - -#### 2.0.1 -* bug fix to not load `markdown.php` twice. Just in case it's loaded by some other plugin. - -#### 2.0.0 -* rearranged where I put `GitHub Plugin URI` header, etc. in README and in this plugin. -* minor spelling fixes -* renamed some functions for their hooks -* refactored `class GitHub_Plugin_Updater` and `class GitHub_Theme_Updater` to use stdClass objects -* further refactored base class `GitHub_Updater` to contain renaming code and create stdClass objects for data. -* added some ability to see changelog for GitHub hosted plugins. -* trying to follow WordPress Plugin Boilerplate, so renamed `classes` to `includes` -* refactored putting all remote api calls in new `class GitHub_Plugin_Updater_API`. -* Theme updating should now be able to have a specified branch. -* works on WordPress 3.8 -* included Michel Fortin's [PHP-Markdown](http://michelf.ca/projects/php-markdown/) for rendering `CHANGES.md` - -#### 1.8.1 -* added some variable declarations -* added early return in no GitHub sourced plugins or themes are identified - -#### 1.8.0 -* refactored to use base class `GitHub_Updater` and extending classes `GitHub_Plugin_Updater` and `GitHub_Theme_Updater`. - -#### 1.7.4 -* changed method of not overwriting extra headers to pass array. - -#### 1.7.3 -* change `'...'` to `…` in renaming notification -* fix to not overwrite extra headers of other plugins. - -#### 1.7.2 -* removed sorting option from `scandir`. Doesn't work with older versions of PHP < 5.4.0 -* removed extraneous data from array in `multisite_get_themes` - -#### 1.7.1 -* updated the transient for themes -* replaced `readdir` with `scandir` for creating WP\_Theme object in multisite - -#### 1.7.0 -* updated class-theme-updater.php to utilize WP\_Theme class -* added method `get_remote_tag` to update plugins using tags or branch, depending upon which has greater version number. -* `get_remote_tag` uses transient to limit calls to API -* fix for `wp_get_themes` not working under plugin network activation on multisite installation. I recreated `wp_get_themes` by reading in the theme directory and adding the WP\_Theme object of `wp_get_theme( 'dir_in_themes_dir' )` to an array. - -#### 1.6.1 -* bug fix for undeclared variable $github_plugins - -#### 1.6.0 -* Added separate method to parse plugin repo info from header -* Shortened GitHub Plugin URI to only use owner/repo -* Shortened GitHub Theme URI to only use owner/repo - -#### 1.5.0 -* Lots of documentation and some bug fixes. Thanks @GaryJones -* Made version checking regex more compatible. Thanks @GaryJones -* Added ability to define branch to update. -* Refactored plugin/theme renaming code. -* Added `GitHub Branch` feature - Thanks @GaryJones -* Trying to comply with WP Coding Standards. -* Major thanks to @GaryJones for all the pull requests and generally improving this project. - -#### 1.4.3 -* Fixed a couple of non-fatal PHP errors. Thanks @jazzsequence - -#### 1.4.2 -* Cleaned up readme's markdown. - -#### 1.4.1 -* Fixed the README to more accurately reflect support for both plugins and themes. - -#### 1.4 -* Fix for rename functions to be more precise, otherwise might rename wp.org repo themes. - -#### 1.3 -* Simplify a couple of if statements. - -#### 1.2 -* Fix to ignore renaming for wp.org plugins - -#### 1.1 -* Sanity check for theme api uri - -#### 1.0 -* Serialized WP\_Theme object to search for added GitHub header, lots of help from Seth. No more `file_get_contents`. -* Converted plugin class and added it to make joint plugin/theme updater. - -#### 0.2 -* Code cleanup. -* Limit `file_get_contents` to 2000 bytes. - -#### 0.1 -* Initial commit diff --git a/github/LICENSE b/github/LICENSE deleted file mode 100644 index d7f1051..0000000 --- a/github/LICENSE +++ /dev/null @@ -1,339 +0,0 @@ -GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - {description} - Copyright (C) {year} {fullname} - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - {signature of Ty Coon}, 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. diff --git a/github/README.md b/github/README.md deleted file mode 100644 index ccdfca3..0000000 --- a/github/README.md +++ /dev/null @@ -1,321 +0,0 @@ -![GitHub Updater](./assets/GitHub_Updater_logo.png) - -# GitHub Updater -* Contributors: [Andy Fragen](https://github.com/afragen), [Gary Jones](https://github.com/GaryJones), [Seth Carstens](https://github.com/scarstens), [contributors](https://github.com/afragen/github-updater/graphs/contributors) -* Tags: plugin, theme, update, updater, github, bitbucket, gitlab, remote install -* Requires at least: 3.8 -* Requires PHP: 5.3 -* Tested up to: 4.3 -* Stable tag: master -* Donate link: http://bit.ly/github-updater -* License: GPLv2 or later -* License URI: http://www.gnu.org/licenses/gpl-2.0.html - - -A simple plugin to enable automatic updates to your GitHub, Bitbucket, or GitLab hosted WordPress plugins and themes. It also allows for the remote installation of plugins or themes. - -This plugin is [not allowed in the wp.org repo](https://github.com/afragen/github-updater/issues/34). :frowning: - -## Description - -This plugin was designed to simply update any GitHub hosted WordPress plugin or theme. Your plugin or theme **must** contain a header in the style.css header or in the plugin's header denoting the location on GitHub. The format is as follows. - -`GitHub Plugin URI: afragen/github-updater` -`GitHub Plugin URI: https://github.com/afragen/github-updater` - -or - -`GitHub Theme URI: afragen/test-child` -`GitHub Theme URI: https://github.com/afragen/test-child` - -...where the above URI leads to the __owner/repository__ of your theme or plugin. The URI may be in the format `https://github.com//` or the short format `/`. You do not need both. Only one Plugin or Theme URI is required. You **must not** include any extensions like `.git`. - -## Installation - -### Composer - -Run the composer command: ```composer require afragen/github-updater``` - - -### Upload - -1. Download the latest [tagged archive](https://github.com/afragen/github-updater/releases) (choose the "zip" option). -2. Go to the __Plugins -> Add New__ screen and click the __Upload__ tab. -3. Upload the zipped archive directly. -4. Go to the Plugins screen and click __Activate__. - -### Manual - -1. Download the latest [tagged archive](https://github.com/afragen/github-updater/releases) (choose the "zip" option). -2. Unzip the archive. -3. Copy the folder to your `/wp-content/plugins/` directory. -4. Go to the Plugins screen and click __Activate__. - -Check out the Codex for more information about [installing plugins manually](http://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation). - -### Git - -Using git, browse to your `/wp-content/plugins/` directory and clone this repository: - -`git clone https://github.com/afragen/github-updater.git` - -Then go to your Plugins screen and click __Activate__. - -### Install GitHub Updater as a Must Use Plugin (optional) - -1. Choose a method from above for installation. -1. **DO NOT** activate! -1. Symlink `wp-content/plugins/github-updater/mu/ghu-loader.php` in `wp-content/mu-plugins`. - -#### in Linux -``` -cd -ln -sv wp-content/plugins/github-updater/mu/ghu-loader.php wp-content/mu-plugins -``` - -#### in Windows (Vista, 7, 8) -``` -cd /D -mklink wp-content\mu-plugins\ghu-loader.php wp-content\plugins\github-updater\mu\ghu-loader.php -``` - -This way you get automatic updates and cannot deactivate the plugin. - -## Usage - -### Plugins - -There must be a `GitHub Plugin URI`, `Bitbucket Plugin URI`, or `GitLab Plugin URI` declaration in the plugin's header. - -~~~php -/* -Plugin Name: GitHub Updater -Plugin URI: https://github.com/afragen/github-updater -Description: A plugin to automatically update GitHub hosted plugins and themes into WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class based upon Whitelabel Framework modifications. -Version: 1.0.0 -Author: Andy Fragen -License: GNU General Public License v2 -License URI: http://www.gnu.org/licenses/gpl-2.0.html -Domain Path: /languages -Text Domain: github-updater -GitHub Plugin URI: https://github.com/afragen/github-updater -GitHub Branch: master -*/ -~~~ - -### Themes - -There must be a `GitHub Theme URI`, `Bitbucket Theme URI`, or `GitLab Theme URI` declaration in the `style.css` file. When initially adding a theme, the directory **must** be identical to the repo name. - -~~~css -/* -Theme Name: Test -Theme URI: http://drfragen.info/ -Version: 0.1.0 -Description: Child theme of TwentyTwelve. -Author: Andy Fragen -Template: twentytwelve -Template Version: 1.0.0 -GitHub Theme URI: https://github.com/afragen/test-child -GitHub Branch: master -*/ -~~~ - -### Optional Headers - -`GitHub Branch`, `Bitbucket Branch`, and `GitLab Branch` are available but not required. - -### Enterprise and Self-Hosted Support - -#### GitHub Enterprise Support - -Add the `GitHub Enterprise` header to the plugin or theme that is hosted on your GitHub self-hosted installation. The settings should be similar to `GitHub Enterprise: https://github.yourhost.com`. - -#### GitLab CE/Enterprise Support - -Add the `GitLab CE` or `GitLab Enterprise` header to the plugin or theme that is hosted on your GitLab self-hosted installation. The settings should be similar to `GitLab CE: https://gitlab.yourhost.com` or `GitLab Enterprise: https://gitlab.yourhost.com`. - -### Versions - -GitHub Updater reads the `Version` headers from both the local file and the remote file. For an update to show as available the remote version number **must** be greater than the local version number. It is **required** to have a `Version` header in your main plugin file or your theme's `style.css` file. It is better to use [Semantic Versioning](http://semver.org). - -If you tag releases the version number of the tag must be the same as in the file inside of the tag. Otherwise a circle of updating may ensue. You do not have to tag releases; but if you do the tagged version will be downloaded preferentially. Please refer to the sections below on branches and tags. - -When testing I find it simpler to decrease the version number in the local file rather than continually push updates with version number increments or new tags. - -## Branch Support - -To specify a branch that you would like to use for updating, just add a branch header. If you develop on `master` and are pushing tags, GitHub Updater will update to the newest tag. If there are no tags or the specified branch is not `master` GitHub Updater will use the specified branch for updating. - -The default state is either `GitHub Branch: master` or nothing at all. They are equivalent. - -If you want to update against branch of your repository other than `master` and have that branch push updates out to users make sure you specify the testing branch in a header, i.e. `GitHub Branch: develop`. When you want users to update against the release branch just have them manually change the header to `GitHub Branch: master` or remove it completely. Tags will be ignored when a branch other than `master` is specified. In this case I would suggest semantic version numbering similar to the following, `...`. - -In the GitHub Updater Settings there is a new setting to enable branch switching for plugins. When checked there will be a new ability from the Plugins page to switch between plugin branches. Switching to the current branch will reinstall the current branch. - -## Tagging - -If the branch header, i.e. `GitHub Branch` or `Bitbucket Branch`, is not specified (or is set to `master`), then the latest tag will be used. GitHub Updater will preferentially use a tag over a branch in this instance. - -If you prefer to create a release asset for distribution, this will be used in preference to a tag. - -## Bitbucket Support - -Instead of the `GitHub Plugin URI` header you will need to use the `Bitbucket Plugin URI` header. - -Instead of the `GitHub Theme URI` header you will need to use the `Bitbucket Theme URI` header. - -The `Bitbucket Branch` header is supported for both plugins and themes. - -## GitLab Support - -Instead of the `GitHub Plugin URI` header you will need to use the `GitLab Plugin URI` header. - -Instead of the `GitHub Theme URI` header you will need to use the `GitLab Theme URI` header. - -The `GitLab Branch` header is supported for both plugins and themes. - -You must set a GitLab private token. Go to your GitLab profile page under Edit Account. From here you can retrieve or reset your GitLab private token. - -## Private Repositories - -Only private repositories will show up in the Settings page. - -![Settings Tab](./assets/screenshot-1.png) - -### GitHub Private Repositories - -In order to specify a private repository you will need to obtain a [personal access token](https://github.com/settings/tokens/new). Once you have this, simply add the token to the appropriate plugin or theme in the Settings tab. - -Leave this empty if the plugin or theme is in a public repository. - -### Bitbucket Private Repositories - -Add your personal Bitbucket username and password in the Settings tab. In order to authenticate with the Bitbucket API you will need to have at least `read` privileges for the Bitbucket private repository. - -In order to specify a private repository you will need to check the box next to the repository name in the Settings tab. - -Leave this unchecked if the plugin or theme is in a public repository. - -Do not include your username or password in the plugin or theme URI. - -## WordPress and PHP Requirements - -There are now two **optional** headers for setting minimum requirements for both WordPress and PHP. - -Use `Requires WP:` to set the minimum required version of WordPress needed for your plugin or theme. eg. `Requires WP: 3.8` - -Use `Requires PHP:` to set the minimum required version of PHP needed for your plugin or theme. eg. `Requires PHP: 5.3.0` - -At the moment the default values are **WordPress 3.8.0** and **PHP 5.3.0** - -## Deleting Transients - -If you use the **Check Again** button in the WordPress Updates screen then all the transients will be deleted and the API will be queried again. This may cause timeout issues against the API, especially the GitHub API which only allows 60 unauthenticated calls per hour. - -Be careful about refreshing the browser window after this as you may be continually deleting the transients and hitting the API. - -## Hosting Plugin in WP.org Repository - -If you develop your plugin on GitHub and it also resides in the WP.org repo, the plugin will preferentially pull updates from WP.org if `GitHub Branch: master`. If `GitHub Branch` is anything other than `master` then the update will pull from GitHub. Make sure that the version of your plugin uploaded to WP.org has `GitHub Branch: master`. - -The same applies for Bitbucket or GitLab hosted plugins. - -## Remote Installation of Repositories - -From the `GitHub Updater Settings Page` there is a tabbed interface for remote installation of plugins or themes. You may use either a full URI or short `/` format. - -![Remote Install of Plugin Tab](./assets/screenshot-2.png) - -## Error Messages - -GitHub Updater now reports a small error message on certain pages in the dashboard. The error codes are HTTP status codes. Most often the code will be either 403 or 401. If you don't have an Access Token set for a private GitHub repo you will get a 404 error. - -### Personal GitHub Access Token - -There is a new setting for a personal GitHub Access Token. I **strongly** encourage everyone to create a [personal access token](https://github.com/settings/tokens/new). Create one with at least `public_repo` access and your rate limit will be increased to 5000 API hits per hour. Unauthenticated calls to the GitHub API are limited to 60 API calls per hour and in certain circumstances, like shared hosting, these limits will be more frequently hit. Thanks [mlteal](https://github.com/mlteal). - -### 403 - Unauthorized Access - -#### GitHub -* usually this means that you have reached GitHub API's rate limit of 60 hits per hour. This is informative and should go away in less than an hour. See above regarding the setting of a personal access token to eliminate this entirely. -* a private GitHub repo without an Access Token designated in the Settings. -* will tell you how long until GitHub API's rate limit will be reset. - -### 401 - Incorrect Authentication - -#### Bitbucket -* incorrect Bitbucket user/pass, no `read` access to private Bitbucket repo -* private Bitbucket repo not checked in Settings - -#### GitHub -* using an incorrect private repo GitHub Access Token for a public repo -* an incorrect Access Token for a private GitHub repo. - -### 429 - Too Many Requests - -I've seen this error code occasionally with Bitbucket. - -## Extended Naming - -There's a hidden preference to use extended naming for plugin directories. Extended Naming follows the convention `--`. The normal method is to name the plugin directory ``. Unfortunately there may be a _potential_ conflict with a WP.org plugin. This preference mitigates that potential conflict. If you switch between normal and extended naming you might have to reactivate your plugins. - -To set Extended Naming add `define( 'GITHUB_UPDATER_EXTENDED_NAMING', true );` in your `wp-config.php` or your theme's `functions.php`. - -## Extras - -[szepeviktor](https://github.com/szepeviktor) has created an add-on plugin to GitHub Updater that identifies all plugins with an icon in the plugin view for GitHub or Bitbucket depending upon where they get updates. It's very clever. - - -### Translations - -* French by - * [Daniel Ménard](https://github.com/daniel-menard) - * [fxbenard](https://github.com/fxbenard) -* Italian by [Enea Overclokk](https://github.com/overclokk) -* Portuguese by - * [Valerio Souza](https://github.com/valeriosouza) - * [Pedro Mendonça](https://github.com/pedro-mendonca) -* Ukrainian by [Andrii Ryzhkv](https://github.com/andriiryzhkov) -* Swedish by [Andréas Lundgren](https://github.com/Adevade) -* Arabic by [Hyyan Abo FAkher](https://github.com/hyyan) -* Spanish by [Jose Miguel Bejarano](https://github.com/xDae) -* German by [Linus Metzler](https://github.com/limenet) -* Romanian by [Corneliu Cirlan](https://github.com/corneliucirlan) -* Japanese by [ishihara](https://github.com/1shiharat) -* Russian by [Anatoly Yumashev](https://github.com/yumashev) - -## Issues - -Please log issues on the GitHub at https://github.com/afragen/github-updater/issues - -If you are using a WordPress Multisite installation, the plugin **should** be network activated. - -When first downloading and installing a plugin from GitHub you might have to do the following, otherwise the next update may not be able to cleanup after itself and re-activate the updated plugin or theme. Or you can just use the remote install feature and this will be done for you. :wink: - -1. Unzip the archive. -2. Fix the folder name to remove to extra stuff GitHub adds to the download, like _-master_. -3. Copy the folder to your plugins directory **or** re-zip folder and add from plugins page. - -W3 Total Cache object cache also clears the transient cache. Unfortunately this hampers GitHub Updater's storage of API data using the Transient API. The solution is to turn off the object cache. - -## ChangeLog - -See [CHANGES.md](CHANGES.md). In your project create a `CHANGES.md` or `CHANGELOG.md` file. - -## Credits - -This plugin's theme updater class was based upon [Whitelabel Framework's updater-plugin.php](https://github.com/WordPress-Phoenix/whitelabel-framework/blob/master/inc/admin/updater-plugin.php), which was based upon https://github.com/UCF/Theme-Updater. - -The plugin updater class was based upon [codepress/github-plugin-updater](https://github.com/codepress/github-plugin-updater). - -Includes - -* [Emanuil Rusev's](https://github.com/erusev) [Parsedown](https://github.com/erusev/parsedown) for rendering ChangeLogs. -* [Mark Jaquith's](https://github.com/markjaquith) [WordPress Plugin Readme Parser](https://github.com/markjaquith/WordPress-Plugin-Readme-Parser/tree/WordPress.org) for parsing `readme.txt`. - -GitHub Updater logo by [LogoMajestic](http://www.logomajestic.com). - -## Pull Requests - -Pull requests are welcome. Please fork and submit pull requests against the `develop` branch. diff --git a/github/assets/GitHub_Updater_logo.png b/github/assets/GitHub_Updater_logo.png deleted file mode 100644 index 680ef65..0000000 Binary files a/github/assets/GitHub_Updater_logo.png and /dev/null differ diff --git a/github/assets/GitHub_Updater_logo_small.png b/github/assets/GitHub_Updater_logo_small.png deleted file mode 100644 index 38eebd1..0000000 Binary files a/github/assets/GitHub_Updater_logo_small.png and /dev/null differ diff --git a/github/assets/screenshot-1.png b/github/assets/screenshot-1.png deleted file mode 100644 index c6df865..0000000 Binary files a/github/assets/screenshot-1.png and /dev/null differ diff --git a/github/assets/screenshot-2.png b/github/assets/screenshot-2.png deleted file mode 100644 index f95085c..0000000 Binary files a/github/assets/screenshot-2.png and /dev/null differ diff --git a/github/github-updater.php b/github/github-updater.php deleted file mode 100644 index bc1409b..0000000 --- a/github/github-updater.php +++ /dev/null @@ -1,64 +0,0 @@ -set_plugin_name( 'GitHub Updater' ); - -if ( ! $updatePhp->does_it_meet_required_php_version() ) { - return false; -} - -// Load textdomain -load_plugin_textdomain( 'github-updater', false, __DIR__ . '/languages' ); - -// Plugin namespace root -$root = array( 'Fragen\\GitHub_Updater' => __DIR__ . '/src/GitHub_Updater' ); - -// Add extra classes -$extra_classes = array( - 'Parsedown' => __DIR__ . '/vendor/Parsedown.php', - 'WPUpdatePHP' => __DIR__ . '/vendor/WPUpdatePhp.php', - 'Automattic_Readme' => __DIR__ . '/vendor/parse-readme.php', - ); - -// Load Autoloader -require_once( __DIR__ . '/src/GitHub_Updater/Autoloader.php' ); -$loader = 'Fragen\\GitHub_Updater\\Autoloader'; -new $loader( $root, $extra_classes ); - -// Instantiate class GitHub_Updater -$instantiate = 'Fragen\\GitHub_Updater\\Base'; -new $instantiate; diff --git a/github/js/ghu_install.js b/github/js/ghu_install.js deleted file mode 100644 index 3f1f395..0000000 --- a/github/js/ghu_install.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Javascript to show and hide the API specific settings - * for the remote install feature. - * - * @class Fragen\GitHub_Updater\Install - * @since 4.6.0 - * @access public - */ -jQuery( document ).ready( function( $ ) { - // Hide non-default (Bitbucket & GitLab) settings on page load - $.each( [ 'bitbucket', 'gitlab' ], function() { - $( 'input.'.concat( this, '_setting') ).parents( 'tr').hide(); - }); - - // When the api selector changes - $( 'select[ name="github_updater_api" ]' ).on( 'change', function() { - - // create difference array - var hideMe = $( [ 'github', 'bitbucket', 'gitlab'] ).not( [ this.value ] ).get(); - - /* - * Show/hide all settings that have the selected api's class. - * this.value equals either 'github', 'bitbucket', or 'gitlab'. - */ - $.each( hideMe, function() { - $( 'input.'.concat( this, '_setting' ) ).parents( 'tr' ).hide(); - }); - - $( 'input.'.concat( this.value, '_setting' ) ).parents( 'tr' ).show(); - - }); -}); diff --git a/github/languages/description-i18n-keys.txt b/github/languages/description-i18n-keys.txt deleted file mode 100644 index 1cd317c..0000000 --- a/github/languages/description-i18n-keys.txt +++ /dev/null @@ -1,29 +0,0 @@ -Add to end of POT - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "" - - -Add the first line of the following to plugin name - -#. Plugin Name of the plugin/theme -#: includes/GitHub_Updater/Settings.php:63 -#: includes/GitHub_Updater/Settings.php:71 -msgid "GitHub Updater" -msgstr "" - diff --git a/github/languages/github-updater-ar.mo b/github/languages/github-updater-ar.mo deleted file mode 100644 index 3663263..0000000 Binary files a/github/languages/github-updater-ar.mo and /dev/null differ diff --git a/github/languages/github-updater-ar.po b/github/languages/github-updater-ar.po deleted file mode 100644 index 36c037e..0000000 --- a/github/languages/github-updater-ar.po +++ /dev/null @@ -1,363 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:23-0800\n" -"PO-Revision-Date: 2015-06-08 20:23-0800\n" -"Last-Translator: Hyyan Abo Fakher \n" -"Language-Team: Hyyan Abo Fakher \n" -"Language: ar\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " -"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "تفعيل كإضافة تلقائية" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "إعادة تسمية %s إلى %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "تمت إعادة التسمية بنجاح" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "غير قادر على إعادة تسمية المستودع الذي تم تنزيله" - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "تنصيب إضافة" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "تنصيب موضوع" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "إضافة" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "موضوع" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "تحميل %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "رابط %s" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "مستضيف المستودعات" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "الفرع" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "مستودع Bitbucket خاص" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "رمز وصول GitHub " - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "إعدادت GitHub الخاصة" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "إدخل اسم الفرع أو اتركه فارغاً لاستخدام `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "أدخل رمز وصول GitHub من مستوعات GitHub الخاصة" - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "أدخل رمز وصول GitHub من مستوعات GitHub الخاصة" - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "‏%1$s غير موجود . خطأ GitHub : " - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "GitHub API's rate limit will reset in %1$s minutes." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "هناك خطأ ما في صفحة إعدادت GitHub " - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "النسخة الحالية محدثة . قم بتجربة %sanother version%s" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr "تفاصيل" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "الإعدادت" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "إعدادت GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "تم الحفظ" - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -#, fuzzy -msgid "Personal GitHub Access Token" -msgstr "رمز وصول GitHub " - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "إعدادت GitHub الخاصة" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "إعدادت GitHub الخاصة" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "إعدادت GitHub الخاصة" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "إعدادت Bitbucket الخاصة" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "اسم المستخدم (Bitbucket )" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "كلمة المرور (Bitbucket )" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "مستودعات Bitbucket الخاصة" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "لم يتم إضافة أي مستودعات خاصة" - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "الموضوع :" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "أدخل رمز وصول GitHub . قم بتركه فارغاً من أجل المستودعات العامة" - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "أدخل رمز وصول GitHub . قم بتركه فارغاً من أجل المستودعات العامة" - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "قم بالاختيار إذا كان المستودع خاص , قم بتركه من أجل المستودعات العامة" - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "أدخل اسم المستخدم و كلمة السر لحساب Bitbucket الخاص بك" - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "الموضوع محدث" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "التراجع ل :" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "لا يوجد أية tags لتراجع " - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "نسخة %1$s جديدة متوافرة " - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "رؤية تفاصيل نسخة %s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "التحديث التلقائي غير متوافر لهذا الموضوع" - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "رؤية نسخة %1$s وتفاصيل %2$s أو %3$s وقم بالتحديث الأن %4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "هناك نسخة جديدة من %s متوافرة الأن" - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "النسخة الحالية محدثة . قم بتجربة %sanother version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "قم باختيار نسخة" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "تنصيب" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "هذه الإضافة" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "للأسف , %1$s لا يمكن أن يعمل على نسخة PHP أقدم من %2$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "اقرأ المزيد عن %s وكيفية التحديث %s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s ينصح باستخدام نسخة PHP أحدث من %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"إضافة لتحديث التقائي للإضافات والموضوعات المستضافة على GitHub أو " -"Bitbucket , الإضافة تسمح أيضاً بتنزيل الإضافات والموضوعات مباشرة لوردبريس , " -"برمجة الإضافة معتمدة على codepress/github-plugin-updater. ,ايضاً Whitelabel Framework " - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "ملف متابعة التغيرات غير متوافر من خلال GitHub Updater. قم بإنشاء ملف " -#~ "CHANGES.md أو CHANGELOG.md في المستودع الخاص بك" - -#, fuzzy -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "" -#~ " مراجعة تفاصيل الإصدار %3$s أو حدث الأن ." - -#~ msgid "URI" -#~ msgstr "(الرابط)" - -#~ msgid "available now." -#~ msgstr "متوافر الأن" - -#~ msgid "View version" -#~ msgstr "رؤية الإصدار" - -#~ msgid "or" -#~ msgstr "أو" - -#~ msgid "update now" -#~ msgstr "حدث الأن" - -#~ msgid "another version?" -#~ msgstr "نسخة أخرى ؟" - -#~ msgid "" -#~ "GitHub Updater will not load. It requires PHP 5.3 or greater. Please ask " -#~ "your service provider to update PHP on your server" -#~ msgstr "" -#~ "لن يتم تفعيل الإضافة . إن الإضافة تحتاج PHP 5.3 أو أعلى . الرجاء طلب " -#~ "تحديث النسخة الحالية من قبل مزود الخدمة" diff --git a/github/languages/github-updater-de_AT.mo b/github/languages/github-updater-de_AT.mo deleted file mode 100644 index c86d53f..0000000 Binary files a/github/languages/github-updater-de_AT.mo and /dev/null differ diff --git a/github/languages/github-updater-de_AT.po b/github/languages/github-updater-de_AT.po deleted file mode 100644 index ca944f8..0000000 --- a/github/languages/github-updater-de_AT.po +++ /dev/null @@ -1,342 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:23-0800\n" -"PO-Revision-Date: 2015-06-08 20:23-0800\n" -"Last-Translator: Linus Metzler \n" -"Language-Team: Andy Fragen \n" -"Language: de_AT\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Aktiviert als mu-Plugin" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Umbenennen von%1$s zu %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Umbenennen erfolgreich" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Kann das heruntergeladene Repository nicht umbenennen." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "Eine Repository-URI ist erforderlich." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Plugin installieren" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Theme installieren" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Theme" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Installiert %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Remoter Repository Host" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Repository-Branch" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Privates Bitbucket Repository" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Accesstoken" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "Privates GitLab Token" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Branchnamen angeben oder leer lassen für `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Geben Sie Ihr GitHub Accesstoken für private GitHub Repositories ein." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Geben Sie Ihr GitLab Accesstoken für private GitLab Repositories ein." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s wurde nicht überprüft. GitHub Updater Fehlercode:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Github APIs Limite wird in %s Minutes zurückgesetzt." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"Es sieht so aus, als ob Sie die GitHub API Limite erreichen. Um dieses " -"Problem zu verhindern, können Sie ein %spersönliches Zugriffstoken%s setzen." - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Wahrscheinlich hat es einen Fehler auf der GitHub Updater Einstellungsseite." - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Sie müssen ein privates GitLab.com, GitLab CE oder GitLab Enterprise Token " -"eingeben." - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "" -"Aktueller Branch ist `%1$s`, versuchen Sie %2$seinen anderen Branch%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Details ansehen" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Einstellungen" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "GitHub Updater Einstellungen" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Gespeichert." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Plugin Branch Wechsel aktivieren" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Persönliches GitHub Access Tiken" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "GitHub Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "GitLab Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "Privates GitLab.com Token" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "Privates GitLab CE oder GitLab Enterprise Token" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Bitbucket Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket Benutzername" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket Passwort" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Bitbucket Private Repositories" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Keine private Repositories installiert." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Theme:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "Auswählen um Plugin Branch Wechsel zu aktivieren auf der Plugin Seite." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Geben Sie Ihr GitHub Accesstoken ein. Leer lassen für öffentliche " -"Repositories." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Geben Sie Ihr persönliches GitHub Accesstoken zu Vermeidung der API-Limite " -"ein." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Aktivieren Sie das Kästchen, falls es sich um ein privates Repository " -"handelt. Lassen Sie es deaktiviert öffentlichen Repositories." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Geben Sie Ihren persönlichen Bitbucket Benutzernamen und Passwort ein." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Geben Sie Ihre GitLab.com, GitLab CE oder GitLab Unternehmen Privat Token." - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Theme ist auf dem neusten Stand!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Rollback zu:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Keine früheren Tags für ein Rollback." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater hat eine neue Version von %s gefunden." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Zeige Details der Version %s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Automatisches Update ist nicht verfügbar für dieses Theme." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Zeige Details der Version%1$s %2$s oder %3$saktualisiere jetzt%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Es ist eine neue Version von %s verfügbar." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "" -"Die aktuelle Version ist auf dem neuesten Stand. Versuchen Sie %seine andere " -"Version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Wählen Sie eine Version" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installieren" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "dieses Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Leider kann %1$s nicht auf PHP-Versionen älter als %2$s ausgeführt werden." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Lesen Sie mehr Informationen über %swie Sie aktualisieren können%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s empfiehlt eine PHP-Version neuer als %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Ein Plugin, das Themes und Plugins, welche auf GitHub, Bitbucket oder GitLab " -"gehostet sind, automatisch aktualisiert. Es ermöglicht ebenfalls, Plugins " -"oder Themes remote in WordPress zu installieren. Die Plugin-Klasse ist auf " -"codepress/" -"github-plugin-updater basiert. Die Theme-Klasse ist auf Modifizierungen " -"von Whitelabel Framework basiert." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Keine Änderungsprotokoll verfügbar via GitHub Updater. Erstellen Sie eine " -#~ "Datei CHANGES.md oder CHANGELOG.md in Ihrem " -#~ "Repository." diff --git a/github/languages/github-updater-de_CH.mo b/github/languages/github-updater-de_CH.mo deleted file mode 100644 index 480820d..0000000 Binary files a/github/languages/github-updater-de_CH.mo and /dev/null differ diff --git a/github/languages/github-updater-de_CH.po b/github/languages/github-updater-de_CH.po deleted file mode 100644 index 93b2dc7..0000000 --- a/github/languages/github-updater-de_CH.po +++ /dev/null @@ -1,342 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: Linus Metzler \n" -"Language-Team: Andy Fragen \n" -"Language: de_CH\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Aktiviert als mu-Plugin" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Umbenennen von%1$s zu %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Umbenennen erfolgreich" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Kann das heruntergeladene Repository nicht umbenennen." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "Eine Repository-URI ist erforderlich." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Plugin installieren" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Theme installieren" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Theme" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Installiert %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Remoter Repository Host" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Repository-Branch" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Privates Bitbucket Repository" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Accesstoken" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "Privates GitLab Token" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Branchnamen angeben oder leer lassen für `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Geben Sie Ihr GitHub Accesstoken für private GitHub Repositories ein." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Geben Sie Ihr GitLab Accesstoken für private GitLab Repositories ein." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s wurde nicht überprüft. GitHub Updater Fehlercode:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Github APIs Limite wird in %s Minutes zurückgesetzt." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"Es sieht so aus, als ob Sie die GitHub API Limite erreichen. Um dieses " -"Problem zu verhindern, können Sie ein %spersönliches Zugriffstoken%s setzen." - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Wahrscheinlich hat es einen Fehler auf der GitHub Updater Einstellungsseite." - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Sie müssen ein privates GitLab.com, GitLab CE oder GitLab Enterprise Token " -"eingeben." - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "" -"Aktueller Branch ist `%1$s`, versuchen Sie %2$seinen anderen Branch%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Details ansehen" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Einstellungen" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "GitHub Updater Einstellungen" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Gespeichert." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Plugin Branch Wechsel aktivieren" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Persönliches GitHub Access Tiken" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "GitHub Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "GitLab Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "Privates GitLab.com Token" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "Privates GitLab CE oder GitLab Enterprise Token" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Bitbucket Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket Benutzername" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket Passwort" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Bitbucket Private Repositories" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Keine private Repositories installiert." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Theme:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "Auswählen um Plugin Branch Wechsel zu aktivieren auf der Plugin Seite." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Geben Sie Ihr GitHub Accesstoken ein. Leer lassen für öffentliche " -"Repositories." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Geben Sie Ihr persönliches GitHub Accesstoken zu Vermeidung der API-Limite " -"ein." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Aktivieren Sie das Kästchen, falls es sich um ein privates Repository " -"handelt. Lassen Sie es deaktiviert öffentlichen Repositories." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Geben Sie Ihren persönlichen Bitbucket Benutzernamen und Passwort ein." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Geben Sie Ihre GitLab.com, GitLab CE oder GitLab Unternehmen Privat Token." - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Theme ist auf dem neusten Stand!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Rollback zu:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Keine früheren Tags für ein Rollback." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater hat eine neue Version von %s gefunden." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Zeige Details der Version %s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Automatisches Update ist nicht verfügbar für dieses Theme." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Zeige Details der Version%1$s %2$s oder %3$saktualisiere jetzt%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Es ist eine neue Version von %s verfügbar." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "" -"Die aktuelle Version ist auf dem neuesten Stand. Versuchen Sie %seine andere " -"Version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Wählen Sie eine Version" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installieren" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "dieses Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Leider kann %1$s nicht auf PHP-Versionen älter als %2$s ausgeführt werden." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Lesen Sie mehr Informationen über %swie Sie aktualisieren können%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s empfiehlt eine PHP-Version neuer als %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Ein Plugin, das Themes und Plugins, welche auf GitHub, Bitbucket oder GitLab " -"gehostet sind, automatisch aktualisiert. Es ermöglicht ebenfalls, Plugins " -"oder Themes remote in WordPress zu installieren. Die Plugin-Klasse ist auf " -"codepress/" -"github-plugin-updater basiert. Die Theme-Klasse ist auf Modifizierungen " -"von Whitelabel Framework basiert." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Keine Änderungsprotokoll verfügbar via GitHub Updater. Erstellen Sie eine " -#~ "Datei CHANGES.md oder CHANGELOG.md in Ihrem " -#~ "Repository." diff --git a/github/languages/github-updater-de_DE.mo b/github/languages/github-updater-de_DE.mo deleted file mode 100644 index 85a8395..0000000 Binary files a/github/languages/github-updater-de_DE.mo and /dev/null differ diff --git a/github/languages/github-updater-de_DE.po b/github/languages/github-updater-de_DE.po deleted file mode 100644 index f86305c..0000000 --- a/github/languages/github-updater-de_DE.po +++ /dev/null @@ -1,342 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: Linus Metzler \n" -"Language-Team: Andy Fragen \n" -"Language: de_DE\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Aktiviert als mu-Plugin" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Umbenennen von%1$s zu %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Umbenennen erfolgreich" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Kann das heruntergeladene Repository nicht umbenennen." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "Eine Repository-URI ist erforderlich." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Plugin installieren" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Theme installieren" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Theme" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Installiert %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Remoter Repository Host" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Repository-Branch" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Privates Bitbucket Repository" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Accesstoken" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "Privates GitLab Token" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Branchnamen angeben oder leer lassen für `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Geben Sie Ihr GitHub Accesstoken für private GitHub Repositories ein." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Geben Sie Ihr GitLab Accesstoken für private GitLab Repositories ein." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s wurde nicht überprüft. GitHub Updater Fehlercode:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Github APIs Limite wird in %s Minutes zurückgesetzt." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"Es sieht so aus, als ob Sie die GitHub API Limite erreichen. Um dieses " -"Problem zu verhindern, können Sie ein %spersönliches Zugriffstoken%s setzen." - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Wahrscheinlich hat es einen Fehler auf der GitHub Updater Einstellungsseite." - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Sie müssen ein privates GitLab.com, GitLab CE oder GitLab Enterprise Token " -"eingeben." - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "" -"Aktueller Branch ist `%1$s`, versuchen Sie %2$seinen anderen Branch%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Details ansehen" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Einstellungen" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "GitHub Updater Einstellungen" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Gespeichert." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Plugin Branch Wechsel aktivieren" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Persönliches GitHub Access Tiken" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "GitHub Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "GitLab Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "Privates GitLab.com Token" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "Privates GitLab CE oder GitLab Enterprise Token" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Bitbucket Privat Einstellungen" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket Benutzername" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket Passwort" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Bitbucket Private Repositories" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Keine private Repositories installiert." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Theme:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "Auswählen um Plugin Branch Wechsel zu aktivieren auf der Plugin Seite." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Geben Sie Ihr GitHub Accesstoken ein. Leer lassen für öffentliche " -"Repositories." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Geben Sie Ihr persönliches GitHub Accesstoken zu Vermeidung der API-Limite " -"ein." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Aktivieren Sie das Kästchen, falls es sich um ein privates Repository " -"handelt. Lassen Sie es deaktiviert öffentlichen Repositories." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Geben Sie Ihren persönlichen Bitbucket Benutzernamen und Passwort ein." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Geben Sie Ihre GitLab.com, GitLab CE oder GitLab Unternehmen Privat Token." - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Theme ist auf dem neusten Stand!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Rollback zu:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Keine früheren Tags für ein Rollback." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater hat eine neue Version von %s gefunden." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Zeige Details der Version %s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Automatisches Update ist nicht verfügbar für dieses Theme." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Zeige Details der Version%1$s %2$s oder %3$saktualisiere jetzt%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Es ist eine neue Version von %s verfügbar." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "" -"Die aktuelle Version ist auf dem neuesten Stand. Versuchen Sie %seine andere " -"Version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Wählen Sie eine Version" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installieren" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "dieses Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Leider kann %1$s nicht auf PHP-Versionen älter als %2$s ausgeführt werden." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Lesen Sie mehr Informationen über %swie Sie aktualisieren können%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s empfiehlt eine PHP-Version neuer als %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Ein Plugin, das Themes und Plugins, welche auf GitHub, Bitbucket oder GitLab " -"gehostet sind, automatisch aktualisiert. Es ermöglicht ebenfalls, Plugins " -"oder Themes remote in WordPress zu installieren. Die Plugin-Klasse ist auf " -"codepress/" -"github-plugin-updater basiert. Die Theme-Klasse ist auf Modifizierungen " -"von Whitelabel Framework basiert." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Keine Änderungsprotokoll verfügbar via GitHub Updater. Erstellen Sie eine " -#~ "Datei CHANGES.md oder CHANGELOG.md in Ihrem " -#~ "Repository." diff --git a/github/languages/github-updater-es_ES.mo b/github/languages/github-updater-es_ES.mo deleted file mode 100644 index d6ec937..0000000 Binary files a/github/languages/github-updater-es_ES.mo and /dev/null differ diff --git a/github/languages/github-updater-es_ES.po b/github/languages/github-updater-es_ES.po deleted file mode 100644 index 8fe1911..0000000 --- a/github/languages/github-updater-es_ES.po +++ /dev/null @@ -1,340 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: esoj \n" -"Language-Team: Andy Fragen \n" -"Language: es\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Activado como mu-plugin" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Renombrado %1$s a %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Renombrado satisfactoriamente" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "No se ha podido renombrar el repositorio descargado." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "Se requiere una URI del repositorio." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Instalar Plugin" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Instalar tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Tema" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Intala %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Host del repositorio remoto" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Rama del repositorio" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Repositorio privado de Bitbucket" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Opciones privadas de GitHub" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Introduce la rama del repositorio o dejar en blanco para `master '" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Introduzca el Token de acceso para repositorios privados de GitHub." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Introduzca el Token de acceso para repositorios privados de GitHub." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s no se pudo comprobar. Código del error de GitHub Updater:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "El límite de la API de GitHub se reseteará en %s minutos." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "Probablemente haya un error en la configuración" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "La rama actual es `%1$s`, intenta %2$sanother branch%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Ver detalles" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Opciones" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Opciones de GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -#, fuzzy -msgid "GitHub Updater" -msgstr "%s no se pudo comprobar. Código del error de GitHub Updater:" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Guardado." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Activar el cambio de rama en los plugins" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Token de acceso personal de GitHub" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Opciones privadas de GitHub" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Opciones privadas de GitHub" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Opciones privadas de GitHub" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Opciones privadas de Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Nombre de usuario de Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Contraseña de Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Repositorios privados de Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "No se han instalado repositorios privados." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Tema:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" -"Activar para permitir el cambio rama desde la página de opciones del Plugin." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Escriba su Token de acceso de GitHub. Dejar en blanco para los repositorios " -"públicos." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Escriba su Token de acceso personal de GitHub para evitar los límites de " -"acceso a la API." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Marque la casilla si es un repositorio privado. Deja sin marcar para " -"repositorios públicos." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Introduzca su nombre de usuario y contraseña de Bitbucket." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "El tema está actualizado!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Retroceder a:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "No hay etiquetas anteriores donde revertir." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater muestra una nueva versión de %s disponible." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Ver detalles de la versión de %s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Este tema no permite actualizaciones automáticas." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Ver %1$s details%2$s de la versión o %3$sactualiza ahora%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Existe una nueva versión de %s disponible." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "La versión actual está actualizada. Intenta con %sanother version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Elige una versión" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Instalar" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "este plungon" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Desafortunadamente, %1$s no se pueden ejecutar en versiones de PHP " -"anteriores a %2$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Más información sobre %show cómo puede actualizar %s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s recomiendo una versión de PHP mayor que %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Un plugin para actualizar automáticamente plugins y temas desde GitHub o " -"Bitbucket. También permite la instalación remota de plugins o temas en " -"WordPress. Clase de los plugins basado en codepress/github-plugin-updater Clase " -"de los temas basado en modificaciones de Whitelabel Framework" - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "No hay registro de cambios está disponible vía GitHub Updater. Crear un " -#~ "archivo CHANGES.md o CHANGELOG.md en su " -#~ "repositorio." diff --git a/github/languages/github-updater-fr_FR.mo b/github/languages/github-updater-fr_FR.mo deleted file mode 100644 index 2de5880..0000000 Binary files a/github/languages/github-updater-fr_FR.mo and /dev/null differ diff --git a/github/languages/github-updater-fr_FR.po b/github/languages/github-updater-fr_FR.po deleted file mode 100644 index b555252..0000000 --- a/github/languages/github-updater-fr_FR.po +++ /dev/null @@ -1,387 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/github-updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: fxbenard | FxB \n" -"Language-Team: fxbenard | FxB \n" -"Language: fr_FR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Installé en tant que plugin \"must-use\" (MU-plugin)." - -#: src/GitHub_Updater/Base.php:467 -#, fuzzy, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Renommage de %s en %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Le renommage a réussi" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Impossible de renommer le dépôt téléchargé." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Installer l'extension" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Installer le thème" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Thème :" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Hébergeur du dépôt" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Branche de référence" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Dépôt BitBucket privé" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "Jeton d'accès à GitHub" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Réglages des dépôts GitHub privés" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Entrez le nom de la branche ou laissez vide pour « master »" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Entrez votre jeton d'accès GitHub (GitHub Access Token)." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Entrez votre jeton d'accès GitHub (GitHub Access Token)." - -#: src/GitHub_Updater/Messages.php:61 -#, fuzzy, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s n'a pas été vérifié. Code d'erreur de GitHub Updater : %s" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "" -"La limite sur le nombre d'appels à l'API GitHub sera réinitialisée dans %s " -"minutes." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -#, fuzzy -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Il y a probablement une erreur sur la page des réglages de GitHub Updater" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "La version actuelle est à jour. Essayez %sune autre version%s" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr "détails" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Réglages" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Réglages de GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Paramètres enregistrés." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -#, fuzzy -msgid "Personal GitHub Access Token" -msgstr "Jeton d'accès à GitHub" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Réglages des dépôts GitHub privés" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Réglages des dépôts GitHub privés" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Réglages des dépôts GitHub privés" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Réglages des dépôts Bitbucket privés" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Nom d'utilisateur Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Mot de passe Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Dépôts BitBucket privés" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Aucun dépôt privé n'est installé." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Thème :" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Entrez votre jeton d'accès GitHub (GitHub Access Token). Laissez vide pour " -"un dépôt public." - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Entrez votre jeton d'accès GitHub (GitHub Access Token). Laissez vide pour " -"un dépôt public." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Cochez la case s'il s'agit d'un dépôt privé. Ne pas cocher s'il s'agit d'un " -"dépôt public." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Entrez votre nom d'utilisateur et mot de passe de Bitbucket." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Le thème est à jour !" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Revenir à la version :" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Aucun tag précédent." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater indique qu'une nouvelle version de %s est disponible." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Voir les détails de la version %s." - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "La mise à jour automatique n'est pas disponible pour ce thème." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "" -"Voir les détails de la version %1$s %2$s ou %3$smettre à jour maintenant%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Une nouvelle version de %s est disponible." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "La version actuelle est à jour. Essayez %sune autre version%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Choisissez une version" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installer" - -#: vendor/WPUpdatePhp.php:24 -#, fuzzy -msgid "this plugin" -msgstr "Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, fuzzy, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Malheureusement, %1$s ne fonctionne pas sur les versions de PHP antérieures " -"à la v.%2$s. En savoir plus sur %3$sles possibilités de mise à jour%4$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Une extension pour mettre à jour automatiquement des extensions et des " -"thèmes WordPress hébergés sur GitHub ou Bitbucket. Elle permet également " -"d'installer des extensions et des thèmes dans WordPress. La classe Plugin " -"est basée sur codepress/github-plugin-updater. La classe Theme est une version " -"modifiée du Whitelabel Framework." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "L'historique des modifications n'est pas disponible. Créez un fichier " -#~ "CHANGES.md ou CHANGELOG.md dans votre dépôt." - -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "" -#~ "%sVoir les détails de la version %s %s ou %smettre à jour maintenant%s." - -#~ msgid "URI" -#~ msgstr "URI" - -#~ msgid "available now." -#~ msgstr "est disponible." - -#~ msgid "View version" -#~ msgstr "Voir la version" - -#~ msgid "or" -#~ msgstr "ou" - -#~ msgid "update now" -#~ msgstr "mettre à jour maintenant" - -#~ msgid "another version?" -#~ msgstr "une autre version ?" - -#~ msgid "" -#~ "GitHub Updater will not load. It requires PHP 5.3 or greater. Please ask " -#~ "your service provider to update PHP on your server" -#~ msgstr "" -#~ "GitHub Updater ne se charge pas. Il nécessite PHP 5.3 ou supérieur. " -#~ "Veuillez demander à votre hébergeur de mettre à jour PHP sur votre " -#~ "serveur." - -#~ msgid "was not checked." -#~ msgstr "n'a pas été vérifié." - -#~ msgid "GitHub Updater Error Code:" -#~ msgstr "Code d'erreur GitHub Updater :" - -#~ msgid " or " -#~ msgstr " ou " diff --git a/github/languages/github-updater-it.mo b/github/languages/github-updater-it.mo deleted file mode 100644 index 2396014..0000000 Binary files a/github/languages/github-updater-it.mo and /dev/null differ diff --git a/github/languages/github-updater-it.po b/github/languages/github-updater-it.po deleted file mode 100644 index 938a8bb..0000000 --- a/github/languages/github-updater-it.po +++ /dev/null @@ -1,400 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: Enea Overclokk \n" -"Language-Team: Enea Overclokk\n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Attivato come mu-plugin" - -#: src/GitHub_Updater/Base.php:467 -#, fuzzy, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Rinominato %s a %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Rinominato con successo" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Impossibile rinominare il repository scaricato." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Installare Plugin" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Installa Tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Tema:" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Installa %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Repository remoto Host" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Ramo del repository" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Repository privato Bitbucket" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Impostazioni private GitHub" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Immettere il nome del ramo o lasciare vuoto per 'master'" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "" -"Inserisci il tuo Access Token di Github. Lascia vuoto per gli archivi " -"pubblici." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "" -"Inserisci il tuo Access Token di Github. Lascia vuoto per gli archivi " -"pubblici." - -#: src/GitHub_Updater/Messages.php:61 -#, fuzzy, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%1$s non è stato verificato. Codice di errore di GitHub Updater: %2$s" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Il limite di frequenza delle GitHub API si resetterà in %s minuti." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -#, fuzzy -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Probabilmente c'è un errore nella pagina impostazioni di GitHub Updater" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "La versione attuale è aggiornata. Prova %sun'altra versione%s" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr "Visualizza i dettagli della versione %4$s" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Impostazioni" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Impostazioni GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Salvato." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -#, fuzzy -msgid "Personal GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Impostazioni private GitHub" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Impostazioni private GitHub" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Impostazioni private GitHub" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Impostazioni private Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Username Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Password Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Repository privato Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Nessun repository privato è installato." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Tema:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Inserisci il tuo Access Token di Github. Lascia vuoto per gli archivi " -"pubblici." - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Inserisci il tuo Access Token di Github. Lascia vuoto per gli archivi " -"pubblici." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Seleziona se il repository è privato. Lascia deselezionato per gli archivi " -"pubblici." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Inserisci la tua username e password di Bitbucket." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Il tema è aggiornato!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Ripristina a:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Nessun tag precedente da ripristinare." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater mostra una nuova versione di %1$s disponibile." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Visualizza i dettagli della versione %s." - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "L'aggiornamento automatico non è disponibile per questo tema." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "" -"Visualizza i dettagli della versione %1$s %2$s o %3$saggiorna adesso%4$s" - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "C'è una nuova versione di %s disponibile." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "La versione attuale è aggiornata. Prova %sun'altra versione%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Scegli una versione" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installa" - -#: vendor/WPUpdatePhp.php:24 -#, fuzzy -msgid "this plugin" -msgstr "Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, fuzzy, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"Purtroppo %1$s non può essere eseguito su versioni di PHP più vecchie di " -"%2$s. Puoi leggere ulteriori informazioni su %3$s come è possibile aggiornare" -"%4$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Un plugin per aggiornare automaticamente un tema o plugin ospitato su GitHub " -"or Bitbucket direttamente dentro WordPress. La classe per la gestione dei " -"plugin è basata su codepress/github-plugin-updater.La classe per la gestione dei " -"temi è basata su Whitelabel Framework modificata." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Nessun changelog è disponibile con GitHub Updater. Crea un file " -#~ "CHANGES.md o CHANGELOG.md nel tuo repository." - -#~ msgid "%1$s was not checked. GitHub Updater Error Code: %2$s" -#~ msgstr "%1$s non è stata verificata. Codice di errore GitHub Updater: %2$s" - -#~ msgid "GitHub API's rate limit will reset in %1$s minutes." -#~ msgstr "Limite di frequenza su GitHub API si resetterà in minuti di %1$s." - -#~ msgid "%sRollback to:%s" -#~ msgstr "%sRipristina a:%s" - -#~ msgid "GitHub Updater shows a new version of %1$s available." -#~ msgstr "GitHub Updater mostra una nuova versione di %1$s disponibile." - -#~ msgid "View version %4$s details" -#~ msgstr "Visualizza i dettagli della versione %4$s" - -#~ msgid "View version %4$s details%5$s or %6$supdate now%7$s." -#~ msgstr "" -#~ "%4$sVisualizza i dettagli della versione %5$s o %6$saggiorna adesso%7$s" - -#~ msgid "There is a new version of %1$s available now." -#~ msgstr "E' disponibile una nuova versione di %1$s." - -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "%sVisualizza i dettagli della versione %s %s o %saggiorna adesso%s." - -#~ msgid "available now." -#~ msgstr "disponibile adesso." - -#, fuzzy -#~ msgid "View version" -#~ msgstr "Visualizza i dettagli della versione %4$s" - -#~ msgid "or" -#~ msgstr "o" - -#~ msgid "update now" -#~ msgstr "aggiorna adesso" - -#~ msgid "another version?" -#~ msgstr "un'altra versione?" - -#~ msgid "was not checked." -#~ msgstr "non è stata verificata." - -#, fuzzy -#~ msgid "GitHub Updater Error Code:" -#~ msgstr "Codice di errore GitHub Updater:" - -#~ msgid " or " -#~ msgstr " o " diff --git a/github/languages/github-updater-ja.mo b/github/languages/github-updater-ja.mo deleted file mode 100644 index 2747173..0000000 Binary files a/github/languages/github-updater-ja.mo and /dev/null differ diff --git a/github/languages/github-updater-ja.po b/github/languages/github-updater-ja.po deleted file mode 100644 index e9c77ed..0000000 --- a/github/languages/github-updater-ja.po +++ /dev/null @@ -1,331 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:22-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: ishihara \n" -"Language-Team: \n" -"Language: ja\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-WPHeader: github-updater.php\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"X-Poedit-SearchPath-0: .\n" -"X-Poedit-SearchPathExcluded-0: *.js\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "mu-plugin として有効化しました。" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "%1$s から %2$sにリネームしています。" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "リネームに成功しました。" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "ダウンロードしたリポジトリの名前を変更することができません。" - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "リポジトリURIが必要です。" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "プラグインをインストール" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "テーマをインストール" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "プラグイン" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "テーマ" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater インストール %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "リモートリポジトリホスト" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "リポジトリのブランチ" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "プライベートなBitbucketのリポジトリ" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "Github アクセストークン" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "GitLab プライベート トークン" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "" -"ブランチ名を入力、または’master’ に設定するために空のままにしてください。" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "プライベートリポジトリ用のGitHubアクセストークンを入力します。" - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "プライベートリポジトリの GitLab プライベートトークンを入力" - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s はチェックされていません。 GitHub Updater エラーコード:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "" - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"GitHub APIの制限に達している可能性があります。この問題を回避する %sPersonal " -"Access Token%sを構成してください。" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "GitHubのアップデータの設定ページにエラーがある可能性があります。" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"あなたはGitLab.com、GitLab CE、またはGitLabエンタープライズプライベートトーク" -"ンを設定する必要があります。" - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "現在のブランチは `%1$s`です。%2$sanother branch%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "詳細を見る" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "設定" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "GitHub Updater 設定" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GItHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "保存しました。" - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "プラグインがブランチを変更することを有効化" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "個人のGitHubのアクセストークン" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "GitHub プライベート設定" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "GitLab プライベートリポジトリ 設定" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "GitLab.com プライベート トークン" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "GitLab CE または GitLab エンタープライズ プライベート トークン" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Bitbucket プライベートリポジトリ 設定" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket ユーザーネーム" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket パスワード" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Bitbucket プライベート リポジトリ" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "" -"プライベートリポジトリを持つプラグイン・テーマがインストールされていません。" - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "テーマ :" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" -"プラグインページからブランチ切り替えを可能にするために確認してください。" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"あなたのGitHub アクセストークンを入力してください。公開リポジトリの場合は空の" -"ままにしてください。" - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"APIアクセス制限を回避するために、あなたのGitHubのアクセストークンを入力してく" -"ださい。" - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "プライベートリポジトリ場合には、チェックしてください。" - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "あなた個人のBitbucket ユーザーネーム、パスワードを入力してください" - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"GitLab.com、GitLab CE、またはGitLabエンタープライズプライベートトークンを入力" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "テーマは最新のものです。" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "ロールバック : " - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "ロールバックする以前のタグはありません。" - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHubのアップデータは、利用可能な%sの新しいバージョンを表示しています" - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "バージョン %s の詳細を見る" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "自動更新はこのテーマでは利用できません。" - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "バージョン%1$sの詳細を見る%2$sもしくは %3$supdate now%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "利用可能な %s の新しいバージョンが追加されました。" - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "現在のバージョンは最新です。%sanother version%s に変更する" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "バージョンを選択" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "インストール" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "このプラグイン" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" -"残念ながら、%1$s は %2$s よりも古いバージョンの PHP で実行できません。" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Read more information about %show you can update%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s recommends a PHP version greater than %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"GitHub、Bitbucket または GitLab を自動的に更新するプラグインは、プラグインや" -"テーマにホストされています。また、WordPressのプラグインやテーマのリモートイン" -"ストールできます。プラグイン クラス codepress/github-plugin-updaterに基づいていま" -"す。テーマ クラスは、Whitelabel Framework の変更に基づいています。" - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" diff --git a/github/languages/github-updater-pt_BR.mo b/github/languages/github-updater-pt_BR.mo deleted file mode 100644 index d247c3f..0000000 Binary files a/github/languages/github-updater-pt_BR.mo and /dev/null differ diff --git a/github/languages/github-updater-pt_BR.po b/github/languages/github-updater-pt_BR.po deleted file mode 100644 index 1d72ccd..0000000 --- a/github/languages/github-updater-pt_BR.po +++ /dev/null @@ -1,375 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:22-0800\n" -"Last-Translator: Valério Souza \n" -"Language-Team: Valério Souza \n" -"Language: pt_BR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Ativado como mu-plugin" - -#: src/GitHub_Updater/Base.php:467 -#, fuzzy, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Renomeando %s para %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Renomeado com sucesso" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Não é possível renomear o repositório baixado." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Instalar o Plugin" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Instalar um novo tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -#, fuzzy -msgid "Theme" -msgstr "Tema:" - -#: src/GitHub_Updater/Install.php:228 -#, fuzzy, php-format -msgid "GitHub Updater Install %s" -msgstr "Instalar o GitHub Updater" - -#: src/GitHub_Updater/Install.php:235 -#, fuzzy, php-format -msgid "%s URI" -msgstr "%sReverter para:%s" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Repositório remoto Host" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Ramo de repositório" - -#: src/GitHub_Updater/Install.php:259 -#, fuzzy -msgid "Private Bitbucket Repository" -msgstr "Repositórios Privados do Bitbucket" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Configurações do GitHub Privado" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Digite o nome de ramo ou deixe em branco para o 'mestre'" - -#: src/GitHub_Updater/Install.php:348 -#, fuzzy -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "" -"Digite seu Token de Acesso do GitHub. Deixe em branco para repositórios " -"públicos." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "" -"Digite seu Token de Acesso do GitHub. Deixe em branco para repositórios " -"públicos." - -#: src/GitHub_Updater/Messages.php:61 -#, fuzzy, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%1$s não foi verificada. GitHub Updater código de erro: %2$s" - -#: src/GitHub_Updater/Messages.php:69 -#, fuzzy, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Limite de taxa do GitHub API irá repor em minutos de %1$s." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "A versão está atualizada. Tentar" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr "Ver versão %4$s detalhada" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Configurações" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Configurações do GitHub Update" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Salvo." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Configurações do GitHub Privado" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Configurações do GitHub Privado" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Configurações do GitHub Privado" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Configurações do Bitbucket Privado" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket Nome de usuário:" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket senha" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Repositórios Privados do Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Não há repositórios privados instalados." - -#: src/GitHub_Updater/Settings.php:357 -#, fuzzy -msgid "Theme:" -msgstr "Tema:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Digite seu Token de Acesso do GitHub. Deixe em branco para repositórios " -"públicos." - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Digite seu Token de Acesso do GitHub. Deixe em branco para repositórios " -"públicos." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Marque se o repositório é privado. Deixe desmarcado se o repositório for " -"publico." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Digite seu usuário e senha do Bitbucket." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Tema está atualizado!" - -#: src/GitHub_Updater/Theme.php:215 -#, fuzzy -msgid "Rollback to:" -msgstr "%sReverter para:%s" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Nenhuma tag anterior para reverter." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, fuzzy, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater tem uma nova versão do %1$s disponível." - -#: src/GitHub_Updater/Theme.php:248 -#, fuzzy, php-format -msgid "View version %s details." -msgstr "Ver versão %4$s detalhada" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Atualização automática não está disponível para esse tema." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, fuzzy, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Ver versão %4$s detalhada%5$s ou %6$satualizar agora%7$s." - -#: src/GitHub_Updater/Theme.php:340 -#, fuzzy, php-format -msgid "There is a new version of %s available now." -msgstr "Há uma nova versão do" - -#: src/GitHub_Updater/Theme.php:367 -#, fuzzy, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "A versão está atualizada. Tentar" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Escolha a Versão" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Instalar" - -#: vendor/WPUpdatePhp.php:24 -#, fuzzy -msgid "this plugin" -msgstr "Plugin" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Um plugin para atualizar automaticamente o GitHub ou Bitbucket hospedado " -"plugins e temas para WordPress. Plugin classe baseado codepress/github-plugin-" -"atualizador. Classe de tema com base em modificações de Whitelabel " -"Framework ." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "No changelog está disponível via GitHub Updater. Crie um arquivo " -#~ "CHANGES.md ou CHANGELOG.md em seu repositório." - -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "%sVer versão %s detalhada%s ou %satualizar agora%s." - -#~ msgid "available now." -#~ msgstr "disponível agora." - -#, fuzzy -#~ msgid "View version" -#~ msgstr "Ver versão %4$s detalhada" - -#~ msgid "or" -#~ msgstr "ou" - -#~ msgid "update now" -#~ msgstr "atualize agora" - -#~ msgid "another version?" -#~ msgstr "outra versão?" - -#~ msgid "was not checked." -#~ msgstr "não foi verificada." - -#~ msgid "GitHub Updater Error Code:" -#~ msgstr "Código de erro de GitHub Updater:" - -#~ msgid " or " -#~ msgstr " ou " diff --git a/github/languages/github-updater-pt_PT.mo b/github/languages/github-updater-pt_PT.mo deleted file mode 100644 index 12330ef..0000000 Binary files a/github/languages/github-updater-pt_PT.mo and /dev/null differ diff --git a/github/languages/github-updater-pt_PT.po b/github/languages/github-updater-pt_PT.po deleted file mode 100644 index 5052fc3..0000000 --- a/github/languages/github-updater-pt_PT.po +++ /dev/null @@ -1,332 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:21-0800\n" -"Last-Translator: Pedro Mendonça \n" -"Language-Team: Pedro Mendonça \n" -"Language: pt_PT\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Activado como um plugin obrigatório" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Renomear %1$s para %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Renomeado com sucesso" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Não foi possível renomear o repositório descarregado." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "É necessário um URI do repositório." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Instalar Plugin" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Instalar Tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Plugin" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Tema" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater instalação de %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "URI do %s" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Alojamento remoto do repositório" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Ramo do repositório" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Repositório privado do Bitbucket" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "Token de acesso do GitHub" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "Token privado do GitLab" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Introduza o nome do ramo ou deixe vazio para `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "" -"Introduza o Token de acesso do GitHub para repositórios privados do GitHub." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "" -"Introduza o Token privado do GitLab para repositórios privados do GitLab." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s não foi verificado. Erro do GitHub Updater com o código:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "A taxa limite da API do GitHub será reposta em %s minutos." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"Parece que se está a aproximar dos limites da API do GitHub. Configure um " -"%sToken pessoal de acesso%s para evitar que isto aconteça." - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" -"Provavelmente existe um erro na página de definições do GitHub Updater." - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Tem que definir um Token privado do GitLab.com, GitLab CE ou GitLab " -"Empresarial." - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "O ramo actual é `%1$s`, experimente %2$soutro ramo%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Ver detalhes" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Definições" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Definições do GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Guardado." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Permitir mudar ramo do plugin" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Token pessoal de acesso do GitHub" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Definições privadas do GitHub" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "Definições privadas do GitLab" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "Token privado do GitLab.com" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "Token privado do GitLab CE ou GitLab Empresarial" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Definições privadas do Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Utilizador do Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Senha do Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Repositórios privados do Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Nenhum repositório privado instalado." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Tema:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" -"Seleccione a opção para permitir alternar entre ramos na página de plugins." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" -"Introduza o seu Token de acesso do GitHub. Deixe vazio para repositórios " -"públicos." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Introduza o seu Token pessoal de acesso do GitHub para evitar o limite de " -"acessos da API." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Seleccione a opção se for um repositório privado. Não seleccione para " -"repositórios públicos." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Introduza o seu utilizador e senha do seu Bitbucket" - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Introduza o seu Token privado do GitLab.com, GitLab CE ou GitLab Empresarial." - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "O tema está actualizado!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Reverter para:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Nenhuma etiqueta anterior para poder reverter." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "O GitHub Updater informa que está disponível uma nova versão de %s." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Ver detalhes da versão %s." - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Actualizações automáticas indisponíveis para este tema." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Ver detalhes da versão %1$s%2$s ou %3$sactualize agora%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Está disponível uma nova versão de %s." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "Esta é a versão actual. Experimente %soutra versão%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Escolha uma versão" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Instalar" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "este plugin" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "Infelizmente, o %1$s não corre em versões do PHP anteriores a %2$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Leia mais informações sobre %scomo pode actualizar%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s recomenda uma versão de PHP superior a %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Um plugin para actualizar automaticamente plugins e temas alojados no " -"GitHub, Bitbucket ou GitLab. Permite a instalação remota de plugins ou temas " -"no WordPress. Classe de plugin baseada em codepress/github-plugin-updater. " -"Classe de tema baseada em modificações de Whitelabel Framework." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" diff --git a/github/languages/github-updater-ro_RO.mo b/github/languages/github-updater-ro_RO.mo deleted file mode 100644 index 627ac29..0000000 Binary files a/github/languages/github-updater-ro_RO.mo and /dev/null differ diff --git a/github/languages/github-updater-ro_RO.po b/github/languages/github-updater-ro_RO.po deleted file mode 100644 index d7432fb..0000000 --- a/github/languages/github-updater-ro_RO.po +++ /dev/null @@ -1,327 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:21-0800\n" -"Last-Translator: \n" -"Language-Team: Corneliu Cirlan\n" -"Language: ro_RO\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-WPHeader: github-updater.php\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" -"2:1));\n" -"X-Poedit-SearchPath-0: .\n" -"X-Poedit-SearchPathExcluded-0: *.js\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Activat ca mu-plugin" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Redenumire %1$s in %2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Redenumire reusita" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Imposibil de redenumit repozitoriul descarcat" - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "URL pentru repozitoriu obligatoriu" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Instaleaza Modul" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Instaleaza Tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Modul" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Tema" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "Instalare Github Updater %s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Gazda repozitoriu distant" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Ramura repozitoriu" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Repozitoriu Bitbucket Privat" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "Jeton de Acces Github" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "Jeton Privat Github" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Introdu numele ramurei sau lasa gol pentru 'master'" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Introdu Jeton de Acces GitHub pentru repozitoriile GitHub private." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Introdu Jeton de Acces GitLab pentru repozitoriile GitLab private." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s nu a fost verificat. Github Updater Cod Eroare:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Rata limitei APIului GitHub se va reseta in %s minute." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" -"Se pare ca atingi limite APIului GitHub. Asigurate si configura un %sJeton " -"Personal de Access%s pentru a evita acest lucru." - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "Probabil este o eroare pe pagina cu Setarile GitHub Updater" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Trebuie sa setezi un Jeton Privat pentru GitLab.com, GitLab CE sau GitHub " -"Enterprise." - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "Ramura curenta este `%1$s`, incerca %2$salta ramura%3$s." - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Vezi detalii" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Setari" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Setari GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Salvat." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Actieaza schimbarea ramurelor pentru Module" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Jeton Personal de Acces GitHub" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Setari Private GitHub" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "Setari Private GitLab" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "Jetor Privat GitLab.com" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "Jeton Privat GitLab CE sau GltLab Enterprise" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Setari Private Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Utilizator Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Parola Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Repozitorii Private Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Nici un repozitoriu privat instalat." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Teme:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr " Bifeaza pentru a activa schimbarea ramurelor de pe pagina Modulelor." - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "Introdu Jetonul de Acces GitHub. Lasa gol pentru repozitorii publice." - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" -"Introdu Jetonul Personal de Acces GitHub pentru a evita limitele de acces " -"API." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "Bifeaza daca repozitoriu privat. Lasa nebifat pentru cele publice." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Introdu utilizatorul si parola pentru Bitbuchet" - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" -"Introdu Jetonul Personal pentru GitLab.com, GitLab CE sau GitLab Enterprise" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Tema e la zi!" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Revenire la:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Nici o eticheta la care sa revii." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater arata o noua versiune pentru %s disponibila." - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "Vezi detaliile pentru versiunea %s." - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Actualizarea automata nu este disponibila pentru aceasta tema." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "Vezi versiunea %1$s detalii%2$s sau %3$sactualizeaza acum%4$s." - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "Exista o noua versiune pentru %s disponibila." - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "Versiunea curenta este la zi. Incearca %salta versiune%s" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Alege o Versiune" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Instaleaza" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "acest modul" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "Din pacate, %1$s nu poate rula pe versiuni PHP mai vechi ca %2$s." - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "Citeste mai multe informatii despre %scum poti actualiza%s." - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "%1$s recomanda o versiune PHP mai mare ca %2$s." - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Un modul pentru a actualiza automat module sau teme gazduite pe GitHub, " -"Bitbucket sau GitLab. Permite, de asemenea, instalari de la distanta a " -"modulelor sau temelor in WordPress. Clasa modulului bazata pe codepress/github-" -"plugin-updater. Clasa temei bazata pe modificarile Whitelabel Framework." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" diff --git a/github/languages/github-updater-ru_RU.mo b/github/languages/github-updater-ru_RU.mo deleted file mode 100644 index 8c792fe..0000000 Binary files a/github/languages/github-updater-ru_RU.mo and /dev/null differ diff --git a/github/languages/github-updater-ru_RU.po b/github/languages/github-updater-ru_RU.po deleted file mode 100644 index 1fa220f..0000000 --- a/github/languages/github-updater-ru_RU.po +++ /dev/null @@ -1,320 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:21-0800\n" -"Last-Translator: Anatoly \n" -"Language-Team: \n" -"Language: ru_RU\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-WPHeader: github-updater.php\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Poedit-SearchPath-0: .\n" -"X-Poedit-SearchPathExcluded-0: *.js\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Активировать в mu-плагина" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Переименование %1$s в%2$s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Успешно переименовано" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Невозможно переименовать скачанный репозиторий." - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "Требуется адрес репозитория (URI)" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Установите плагин" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Установите тему" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Плагин" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Тема" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater Установка%s" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "%s URI" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Хост удаленного репозитория" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Ветка репозитория" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Приватный Bitbucket репозиторий" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "GitLab Private Token" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Введите имя ветки или оставьте пустым для `master`" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Введите GitHub Access Token для приватных репозиториев GitHub." - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Введите GitLab Private Token для приватных репозиториев GitLab." - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%s не был проверен. GitHub Updater Error Code:" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Ограничение скорости GitHub API будет сброшено через: %s (минут)" - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "Подробнее" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Настройки" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "GitHub Updater Настройки" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Сохранено" - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "Включить переключатель веток для плагинов" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "Персональный GitHub Access Token" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "GitHub Private Настройки" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "GitHub Private Настройки" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket Имя пользователя" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Никакие частные репозитории не установлены." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Тема:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Введите ваши личные имя пользователя и пароль от Bitbucket." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Обновление не требуется" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "Откат к:" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "" - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "" - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Автоматическое обновление недоступно для этой темы." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "" - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "" - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Выберите версию" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Установить" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "этот плагин" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Плагин автоматического обновления из GitHub, Bitbucket или GitLab для " -"плагинов и тем. Она также позволяет установить плагин или тему в WordPress. " -"Механизм обновления плагинов основан на codepress / GitHub-плагина-Update . " -"Обновление тем основано Whitelabel Framework модификаций." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" diff --git a/github/languages/github-updater-sv_SE.mo b/github/languages/github-updater-sv_SE.mo deleted file mode 100644 index 92a4aca..0000000 Binary files a/github/languages/github-updater-sv_SE.mo and /dev/null differ diff --git a/github/languages/github-updater-sv_SE.po b/github/languages/github-updater-sv_SE.po deleted file mode 100644 index b042364..0000000 --- a/github/languages/github-updater-sv_SE.po +++ /dev/null @@ -1,363 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:21-0800\n" -"Last-Translator: Andréas Lundgren\n" -"Language-Team: Andréas Lundgren\n" -"Language: sv_SE\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Aktiverad som mu-tillägg" - -#: src/GitHub_Updater/Base.php:467 -#, fuzzy, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Döper om %s till %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Namnbytet lyckades" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Kunde inte döpa om den" - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Installera tillägg" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Installera tema" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Tilläggs-" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "Tema-" - -#: src/GitHub_Updater/Install.php:228 -#, fuzzy, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater-installera" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Fjärrvärd för repo" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Repo branch" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "Privat Bitbucket repo" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Privata inställningar för GitHub" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Fyll i ett branch-namn eller lämna tomt för master" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Fyll i GitHub Access Token för privata GitHub repos." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Fyll i GitHub Access Token för privata GitHub repos." - -#: src/GitHub_Updater/Messages.php:61 -#, fuzzy, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%1$s har inte kontrollerats. GitHub Updater felkod: %2$s" - -#: src/GitHub_Updater/Messages.php:69 -#, fuzzy, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Gränsen för GitHub API återställs %1$s minuter." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "Nuvarande version är aktuell. Testa" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr " " - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Inställningar" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Inställningar för GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Sparat." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -#, fuzzy -msgid "Personal GitHub Access Token" -msgstr "GitHub Access Token" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Privata inställningar för GitHub" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Privata inställningar för GitHub" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Privata inställningar för GitHub" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Inställningar för Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Användarnamn för Bitbucket" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Lösenord för Bitbucket" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Privata inställningar för Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Inga privata repos är installerade." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "Tema:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "Fyll i ditt GitHub Access Token. Lämna tomt för publika repos." - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "Fyll i ditt GitHub Access Token. Lämna tomt för publika repos." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "Kryssa i boxen för privata repos. Lämna okryssad för publika repos." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Fyll i inloggningsinformation för din Bitbucketanvändare." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Temat är aktuellt!" - -#: src/GitHub_Updater/Theme.php:215 -#, fuzzy -msgid "Rollback to:" -msgstr "%sGå tillbaka till:%s" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Inga föregående taggar att gå tillbaka till." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, fuzzy, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater visar att det finns en ny version av %1$s tillgänglig." - -#: src/GitHub_Updater/Theme.php:248 -#, fuzzy, php-format -msgid "View version %s details." -msgstr "Visa detaljer för version %4$s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Automatiska uppdateringar är inte tillgängligt för detta temat." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, fuzzy, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "" -"Visa detaljer för version %3$s eller uppdatera " -"nu." - -#: src/GitHub_Updater/Theme.php:340 -#, fuzzy, php-format -msgid "There is a new version of %s available now." -msgstr "Det finns en ny version av" - -#: src/GitHub_Updater/Theme.php:367 -#, fuzzy, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "Nuvarande version är aktuell. Testa" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Välj en version" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Installera" - -#: vendor/WPUpdatePhp.php:24 -#, fuzzy -msgid "this plugin" -msgstr "Tilläggs-" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Ett tillägg för att automatiskt uppdatera teman och tillägg från GitHub " -"eller Bitbucket direkt i WordPress. Tilläggsklassen baserad på codepress/github-" -"plugin-updater. Temaklassen baserad på modifikationer av Whitelabel " -"Framework." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Andy Fragen" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Ingen changelog finns tillgänglig via GitHub Updater. Skapa CHANGES." -#~ "md eller CHANGELOG.md i din repo." - -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "%sVisa detaljer för version %s %s eller %suppdatera nu%s." - -#~ msgid "URI" -#~ msgstr "URI" - -#~ msgid "available now." -#~ msgstr "tillgänglig." - -#~ msgid "View version" -#~ msgstr "Visa detaljer för version" - -#~ msgid "or" -#~ msgstr "eller" - -#~ msgid "update now" -#~ msgstr "uppdatera nu" - -#~ msgid "another version?" -#~ msgstr "en annan version?" - -#~ msgid "was not checked." -#~ msgstr "kunde inte kontrolleras. " - -#~ msgid "GitHub Updater Error Code:" -#~ msgstr "GitHub Updater felkod:" diff --git a/github/languages/github-updater-uk.mo b/github/languages/github-updater-uk.mo deleted file mode 100644 index 031cd4d..0000000 Binary files a/github/languages/github-updater-uk.mo and /dev/null differ diff --git a/github/languages/github-updater-uk.po b/github/languages/github-updater-uk.po deleted file mode 100644 index dceea9d..0000000 --- a/github/languages/github-updater-uk.po +++ /dev/null @@ -1,365 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:21-0800\n" -"PO-Revision-Date: 2015-06-08 20:21-0800\n" -"Last-Translator: Andrii Ryzhkv\n" -"Language-Team: Andrii Ryzhkv\n" -"Language: uk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Poedit-SearchPath-0: .\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "Активувати як mu-plugin" - -#: src/GitHub_Updater/Base.php:467 -#, fuzzy, php-format -msgid "Renaming %1$s to %2$s" -msgstr "Перейменування %s в %s" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "Перейменування успішне" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "Неможливо перейменувати скачане сховище." - -#: src/GitHub_Updater/Install.php:56 -#, fuzzy -msgid "A repository URI is required." -msgstr "Неможливо перейменувати скачане сховище." - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "Встановити плагін" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "Інсталювати тему" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "Плагін" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "тему:" - -#: src/GitHub_Updater/Install.php:228 -#, fuzzy, php-format -msgid "GitHub Updater Install %s" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Install.php:235 -#, fuzzy, php-format -msgid "%s URI" -msgstr "%sВідкат до:%s" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "Віддаленого сховища хост" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "Репозиторій відділення" - -#: src/GitHub_Updater/Install.php:259 -#, fuzzy -msgid "Private Bitbucket Repository" -msgstr "Приватні сховища Bitbucket" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Install.php:278 -#, fuzzy -msgid "GitLab Private Token" -msgstr "Налаштування приватного GitHub" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "Введіть ім'я відділення або Залиште пустим для 'майстер'" - -#: src/GitHub_Updater/Install.php:348 -#, fuzzy -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "Введіть маркер доступу GitHub . Залиште порожнім для публічних сховищ." - -#: src/GitHub_Updater/Install.php:362 -#, fuzzy -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "Введіть маркер доступу GitHub. Залиште порожнім для публічних сховищ." - -#: src/GitHub_Updater/Messages.php:61 -#, fuzzy, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "%1$s не перевірив. GitHub Updater код помилки: %2$s" - -#: src/GitHub_Updater/Messages.php:69 -#, fuzzy, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "Обмеження частоти GitHub API буде скинути в %1$s хвилин." - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, fuzzy, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "Поточна версія остання. Спробуйте" - -#: src/GitHub_Updater/Plugin.php:199 -#, fuzzy -msgid "View details" -msgstr "Переглянути подробиці версії %4$s" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "Налаштування" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "Налаштування GitHub Updater" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "GitHub Updater" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "Збережено." - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "Налаштування приватного GitHub" - -#: src/GitHub_Updater/Settings.php:224 -#, fuzzy -msgid "GitLab Private Settings" -msgstr "Налаштування приватного GitHub" - -#: src/GitHub_Updater/Settings.php:233 -#, fuzzy -msgid "GitLab.com Private Token" -msgstr "Налаштування приватного GitHub" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "Налаштування приватного Bitbucket" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "Bitbucket ім'я користувача" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "Bitbucket пароль" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "Приватні сховища Bitbucket" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "Жодне приватне сховище не встановлене." - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "тему:" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "Введіть маркер доступу GitHub. Залиште порожнім для публічних сховищ." - -#: src/GitHub_Updater/Settings.php:447 -#, fuzzy -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "Введіть маркер доступу GitHub. Залиште порожнім для публічних сховищ." - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" -"Позначте, якщо сховище приватне. Залиште не позначеним для публічних сховищ." - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "Введіть ваші особисті BitBucket ім'я користувача та пароль." - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "Тема не має оновлень!" - -#: src/GitHub_Updater/Theme.php:215 -#, fuzzy -msgid "Rollback to:" -msgstr "%sВідкат до:%s" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "Немає теґів для відкату назад." - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, fuzzy, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "GitHub Updater показує, що доступна нова версія %1$s. " - -#: src/GitHub_Updater/Theme.php:248 -#, fuzzy, php-format -msgid "View version %s details." -msgstr "Переглянути подробиці версії %4$s" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "Автоматичне оновлення недоступно для цієї теми." - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, fuzzy, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "%4$sПереглянути подробиці версії %5$s або %6$sоновити зараз%7$s ." - -#: src/GitHub_Updater/Theme.php:340 -#, fuzzy, php-format -msgid "There is a new version of %s available now." -msgstr "Нова версія" - -#: src/GitHub_Updater/Theme.php:367 -#, fuzzy, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "Поточна версія остання. Спробуйте" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "Вибрати версію" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "Встановити" - -#: vendor/WPUpdatePhp.php:24 -#, fuzzy -msgid "this plugin" -msgstr "Плагін" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "https://github.com/afragen/github-updater" - -#. Description of the plugin/theme -#, fuzzy -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" -"Плаґін для автоматичного оновлення плаґінів та тем WordPress, які " -"розміщуються на GitHub або BitBucket. Клас плаґіну основано на codepress / GitHub-" -"Plugin-Updater . Клас теми основано на модифікаціях Whitelabel Framework." - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "Енді Фраген" - -#~ msgid "" -#~ "No changelog is available via GitHub Updater. Create a file CHANGES." -#~ "md or CHANGELOG.md in your repository." -#~ msgstr "" -#~ "Немає доступних змін через GitHub Updater. Створіть файл CHANGES." -#~ "md або CHANGELOG.md у вашому сховищі." - -#~ msgid "%sView version %s details%s or %supdate now%s." -#~ msgstr "%sПереглянути подробиці версії %s %s або %sоновити зараз%s ." - -#~ msgid "available now." -#~ msgstr "зараз доступна." - -#, fuzzy -#~ msgid "View version" -#~ msgstr "Переглянути подробиці версії %4$s" - -#~ msgid "or" -#~ msgstr "або" - -#~ msgid "update now" -#~ msgstr "оновити зараз" - -#~ msgid "another version?" -#~ msgstr "іншу версію?" - -#~ msgid "was not checked." -#~ msgstr "не було підтверджено." - -#~ msgid "GitHub Updater Error Code:" -#~ msgstr "GitHub Updater код помилки:" - -#~ msgid " or " -#~ msgstr " або " diff --git a/github/languages/github-updater.pot b/github/languages/github-updater.pot deleted file mode 100644 index 9d4018c..0000000 --- a/github/languages/github-updater.pot +++ /dev/null @@ -1,312 +0,0 @@ -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: GitHub Updater\n" -"POT-Creation-Date: 2015-06-08 20:18-0800\n" -"PO-Revision-Date: 2015-05-20 19:10-0800\n" -"Last-Translator: \n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.1\n" -"X-Poedit-Basepath: ..\n" -"X-Poedit-WPHeader: github-updater.php\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" -"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" -"_nx_noop:3c,1,2;__ngettext_noop:1,2\n" -"X-Poedit-SearchPath-0: .\n" -"X-Poedit-SearchPathExcluded-0: *.js\n" - -#: mu/ghu-loader.php:66 -msgid "Activated as mu-plugin" -msgstr "" - -#: src/GitHub_Updater/Base.php:467 -#, php-format -msgid "Renaming %1$s to %2$s" -msgstr "" - -#: src/GitHub_Updater/Base.php:477 -msgid "Rename successful" -msgstr "" - -#: src/GitHub_Updater/Base.php:484 -msgid "Unable to rename downloaded repository." -msgstr "" - -#: src/GitHub_Updater/Install.php:56 -msgid "A repository URI is required." -msgstr "" - -#: src/GitHub_Updater/Install.php:194 src/GitHub_Updater/Settings.php:69 -msgid "Install Plugin" -msgstr "" - -#: src/GitHub_Updater/Install.php:197 src/GitHub_Updater/Settings.php:70 -msgid "Install Theme" -msgstr "" - -#: src/GitHub_Updater/Install.php:214 -msgid "Plugin" -msgstr "" - -#: src/GitHub_Updater/Install.php:217 -msgid "Theme" -msgstr "" - -#: src/GitHub_Updater/Install.php:228 -#, php-format -msgid "GitHub Updater Install %s" -msgstr "" - -#: src/GitHub_Updater/Install.php:235 -#, php-format -msgid "%s URI" -msgstr "" - -#: src/GitHub_Updater/Install.php:243 -msgid "Remote Repository Host" -msgstr "" - -#: src/GitHub_Updater/Install.php:251 -msgid "Repository Branch" -msgstr "" - -#: src/GitHub_Updater/Install.php:259 -msgid "Private Bitbucket Repository" -msgstr "" - -#: src/GitHub_Updater/Install.php:267 src/GitHub_Updater/Settings.php:198 -msgid "GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Install.php:278 -msgid "GitLab Private Token" -msgstr "" - -#: src/GitHub_Updater/Install.php:306 -msgid "Enter branch name or leave empty for `master`" -msgstr "" - -#: src/GitHub_Updater/Install.php:348 -msgid "Enter GitHub Access Token for private GitHub repositories." -msgstr "" - -#: src/GitHub_Updater/Install.php:362 -msgid "Enter GitLab Private Token for private GitLab repositories." -msgstr "" - -#: src/GitHub_Updater/Messages.php:61 -#, php-format -msgid "%s was not checked. GitHub Updater Error Code:" -msgstr "" - -#: src/GitHub_Updater/Messages.php:69 -#, php-format -msgid "GitHub API's rate limit will reset in %s minutes." -msgstr "" - -#: src/GitHub_Updater/Messages.php:74 -#, php-format -msgid "" -"It looks like you are running into GitHub API rate limits. Be sure and " -"configure a %sPersonal Access Token%s to avoid this issue." -msgstr "" - -#: src/GitHub_Updater/Messages.php:82 -msgid "There is probably an error on the GitHub Updater Settings page." -msgstr "" - -#: src/GitHub_Updater/Messages.php:95 -msgid "" -"You must set a GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:149 -#, php-format -msgid "Current branch is `%1$s`, try %2$sanother branch%3$s." -msgstr "" - -#: src/GitHub_Updater/Plugin.php:199 -msgid "View details" -msgstr "" - -#: src/GitHub_Updater/Settings.php:68 src/GitHub_Updater/Settings.php:528 -msgid "Settings" -msgstr "" - -#: src/GitHub_Updater/Settings.php:81 src/GitHub_Updater/Settings.php:89 -#: src/GitHub_Updater/Settings.php:172 -msgid "GitHub Updater Settings" -msgstr "" - -#. Plugin Name of the plugin/theme -#: src/GitHub_Updater/Settings.php:82 src/GitHub_Updater/Settings.php:90 -#: src/GitHub_Updater/Settings.php:127 -msgid "GitHub Updater" -msgstr "" - -#: src/GitHub_Updater/Settings.php:131 -msgid "Saved." -msgstr "" - -#: src/GitHub_Updater/Settings.php:179 -msgid "Enable Plugin Branch Switching" -msgstr "" - -#: src/GitHub_Updater/Settings.php:191 -msgid "Personal GitHub Access Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:211 -msgid "GitHub Private Settings" -msgstr "" - -#: src/GitHub_Updater/Settings.php:224 -msgid "GitLab Private Settings" -msgstr "" - -#: src/GitHub_Updater/Settings.php:233 -msgid "GitLab.com Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:244 -msgid "GitLab CE or GitLab Enterprise Private Token" -msgstr "" - -#: src/GitHub_Updater/Settings.php:257 -msgid "Bitbucket Private Settings" -msgstr "" - -#: src/GitHub_Updater/Settings.php:264 -msgid "Bitbucket Username" -msgstr "" - -#: src/GitHub_Updater/Settings.php:273 -msgid "Bitbucket Password" -msgstr "" - -#: src/GitHub_Updater/Settings.php:286 -msgid "Bitbucket Private Repositories" -msgstr "" - -#: src/GitHub_Updater/Settings.php:298 -msgid "No private repositories are installed." -msgstr "" - -#: src/GitHub_Updater/Settings.php:357 -msgid "Theme:" -msgstr "" - -#: src/GitHub_Updater/Settings.php:433 -msgid "Check to enable branch switching from the Plugins page." -msgstr "" - -#: src/GitHub_Updater/Settings.php:440 -msgid "Enter your GitHub Access Token. Leave empty for public repositories." -msgstr "" - -#: src/GitHub_Updater/Settings.php:447 -msgid "Enter your personal GitHub Access Token to avoid API access limits." -msgstr "" - -#: src/GitHub_Updater/Settings.php:454 -msgid "" -"Check box if private repository. Leave unchecked for public repositories." -msgstr "" - -#: src/GitHub_Updater/Settings.php:461 -msgid "Enter your personal Bitbucket username and password." -msgstr "" - -#: src/GitHub_Updater/Settings.php:468 -msgid "Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token." -msgstr "" - -#: src/GitHub_Updater/Theme.php:210 -msgid "Theme is up-to-date!" -msgstr "" - -#: src/GitHub_Updater/Theme.php:215 -msgid "Rollback to:" -msgstr "" - -#: src/GitHub_Updater/Theme.php:233 -msgid "No previous tags to rollback to." -msgstr "" - -#: src/GitHub_Updater/Theme.php:241 src/GitHub_Updater/Theme.php:255 -#, php-format -msgid "GitHub Updater shows a new version of %s available." -msgstr "" - -#: src/GitHub_Updater/Theme.php:248 -#, php-format -msgid "View version %s details." -msgstr "" - -#: src/GitHub_Updater/Theme.php:252 -msgid "Automatic update is unavailable for this theme." -msgstr "" - -#: src/GitHub_Updater/Theme.php:262 src/GitHub_Updater/Theme.php:347 -#, php-format -msgid "View version %1$s details%2$s or %3$supdate now%4$s." -msgstr "" - -#: src/GitHub_Updater/Theme.php:340 -#, php-format -msgid "There is a new version of %s available now." -msgstr "" - -#: src/GitHub_Updater/Theme.php:367 -#, php-format -msgid "Current version is up to date. Try %sanother version%s" -msgstr "" - -#: src/GitHub_Updater/Theme.php:381 -msgid "Choose a Version" -msgstr "" - -#: src/GitHub_Updater/Theme.php:384 -msgid "Install" -msgstr "" - -#: vendor/WPUpdatePhp.php:24 -msgid "this plugin" -msgstr "" - -#: vendor/WPUpdatePhp.php:92 -#, php-format -msgid "Unfortunately, %1$s can not run on PHP versions older than %2$s." -msgstr "" - -#: vendor/WPUpdatePhp.php:94 vendor/WPUpdatePhp.php:110 -#, php-format -msgid "Read more information about %show you can update%s." -msgstr "" - -#: vendor/WPUpdatePhp.php:108 -#, php-format -msgid "%1$s recommends a PHP version greater than %2$s." -msgstr "" - -#. Plugin URI of the plugin/theme -msgid "https://github.com/afragen/github-updater" -msgstr "" - -#. Description of the plugin/theme -msgid "" -"A plugin to automatically update GitHub, Bitbucket or GitLab hosted plugins " -"and themes. It also allows for remote installation of plugins or themes into " -"WordPress. Plugin class based upon codepress/github-plugin-updater. Theme class " -"based upon Whitelabel Framework modifications." -msgstr "" - -#. Author of the plugin/theme -msgid "Andy Fragen" -msgstr "" diff --git a/github/mu/ghu-loader.php b/github/mu/ghu-loader.php deleted file mode 100644 index b519d45..0000000 --- a/github/mu/ghu-loader.php +++ /dev/null @@ -1,82 +0,0 @@ - __('Activated as mu-plugin', 'github-updater' ) ), $actions ); -} - -/* - * Deactivate normal plugin as it's loaded as mu-plugin. - */ -add_action( 'activated_plugin', 'ghu_deactivate', 10, 2 ); - -/* - * Remove links and checkbox from Plugins page so user can't delete main plugin. - */ -add_filter( 'network_admin_plugin_action_links_' . $ghu_plugin_file, 'ghu_mu_plugin_active' ); -add_filter( 'plugin_action_links_' . $ghu_plugin_file, 'ghu_mu_plugin_active' ); -add_action( 'after_plugin_row_' . $ghu_plugin_file, - function() { - print(''); - } ); diff --git a/github/readme.txt b/github/readme.txt deleted file mode 100644 index 800348a..0000000 --- a/github/readme.txt +++ /dev/null @@ -1,45 +0,0 @@ -=== GitHub Updater === -Contributors: afragen, garyj, sethmatics -Donate link: http://bit.ly/github-updater -Tags: plugin, theme, update, updater, github, bitbucket, gitlab, remote install -Requires at least: 3.8 -Tested up to: 4.3 -Stable tag: master -License: GPLv2 or later -License URI: http://www.gnu.org/licenses/gpl-2.0.html - -== Description == - -This plugin was designed to simply update any GitHub hosted WordPress plugin or theme. Currently, plugins or themes hosted on GitHub, Bitbucket, or GitLab are also supported. Additionally, self-hosted installations of GitHub or GitLab are supported. It also allows for remote installation of plugins or themes into WordPress. - -Your plugin or theme **must** contain a header in the style.css header or in the plugin's header denoting the location on GitHub. The format is as follows. - -`GitHub Plugin URI: afragen/github-updater` -`GitHub Plugin URI: https://github.com/afragen/github-updater` - -or - -`GitHub Theme URI: afragen/test-child` -`GitHub Theme URI: https://github.com/afragen/test-child` - -...where the above URI leads to the __owner/repository__ of your theme or plugin. The URI may be in the format `https://github.com//` or the short format `/`. You do not need both. Only one Plugin or Theme URI is required. You **must not** include any extensions like `.git`. - -The following headers are available for use depending upon your hosting source. - -### GitHub -* GitHub Plugin URI -* GitHub Theme URI -* GitHub Branch -* GitHub Enterprise - -###Bitbucket -* Bitbucket Plugin URI -* Bitbucket Theme URI -* Bitbucket Branch - -###GitLab -* GitLab Plugin URI -* GitLab Theme URI -* GitLab Branch -* GitLab Enterprise -* GitLab CE diff --git a/github/src/GitHub_Updater/API.php b/github/src/GitHub_Updater/API.php deleted file mode 100644 index 8563278..0000000 --- a/github/src/GitHub_Updater/API.php +++ /dev/null @@ -1,182 +0,0 @@ -type->type ) { - case ( stristr( $this->type->type, 'github' ) ): - $arr['repo'] = 'github'; - $arr['base_uri'] = 'https://api.github.com'; - $arr['base_download'] = 'https://github.com'; - break; - case( stristr( $this->type->type, 'bitbucket' ) ): - $arr['repo'] = 'bitbucket'; - $arr['base_uri'] = 'https://bitbucket.org/api'; - $arr['base_download'] = 'https://bitbucket.org'; - break; - case (stristr( $this->type->type, 'gitlab' ) ): - $arr['repo'] = 'gitlab'; - $arr['base_uri'] = 'https://gitlab.com/api/v3'; - $arr['base_download'] = 'https://gitlab.com'; - break; - default: - $arr = array(); - } - - return $arr; - } - - /** - * Call the API and return a json decoded body. - * Create error messages. - * - * @see http://developer.github.com/v3/ - * - * @param string $url - * - * @return boolean|object - */ - protected function api( $url ) { - $type = $this->return_repo_type(); - $response = wp_remote_get( $this->_get_api_url( $url ) ); - $code = (integer) wp_remote_retrieve_response_code( $response ); - $allowed_codes = array( 200, 404 ); - - if ( is_wp_error( $response ) ) { - return false; - } - if ( ! in_array( $code, $allowed_codes, false ) ) { - self::$error_code = array_merge( - self::$error_code, - array( $this->type->repo => array( - 'repo' => $this->type->repo, - 'code' => $code, - 'name' => $this->type->name, - ) - ) ); - if ( 'github' === $type['repo'] ) { - GitHub_API::_ratelimit_reset( $response, $this->type->repo ); - } - Messages::create_error_message( $type['repo'] ); - return false; - } - - return json_decode( wp_remote_retrieve_body( $response ) ); - } - - /** - * Return API url. - * - * @param string $endpoint - * - * @return string $endpoint - */ - private function _get_api_url( $endpoint ) { - $type = $this->return_repo_type(); - $segments = array( - 'owner' => $this->type->owner, - 'repo' => $this->type->repo, - ); - - /* - * Add or filter the available segments that are used to replace placeholders. - * - * @param array $segments list of segments. - */ - $segments = apply_filters( 'github_updater_api_segments', $segments ); - - foreach ( $segments as $segment => $value ) { - $endpoint = str_replace( '/:' . sanitize_key( $segment ), '/' . sanitize_text_field( $value ), $endpoint ); - } - - switch ( $type['repo'] ) { - case 'github': - $endpoint = GitHub_API::add_endpoints( $this, $endpoint ); - if ( $this->type->enterprise ) { - return $endpoint; - } - break; - case 'gitlab': - $endpoint = GitLab_API::add_endpoints( $this, $endpoint ); - if ( $this->type->enterprise ) { - return $endpoint; - } - break; - default: - } - - return $type['base_uri'] . $endpoint; - } - - /** - * Validate wp_remote_get response. - * - * @param $response - * - * @return bool true if invalid - */ - protected function validate_response( $response ) { - if ( empty( $response ) || isset( $response->message ) ) { - return true; - } - - return false; - } - -} diff --git a/github/src/GitHub_Updater/Autoloader.php b/github/src/GitHub_Updater/Autoloader.php deleted file mode 100644 index 84c76c0..0000000 --- a/github/src/GitHub_Updater/Autoloader.php +++ /dev/null @@ -1,87 +0,0 @@ - - * @author Barry Hughes - * @license GPL-2.0+ - * @link http://github.com/afragen/autoloader - * @copyright 2015 Andy Fragen - * @version 2.0.0 - */ -class Autoloader { - /** - * Roots to scan when autoloading. - * - * @var array - */ - protected $roots = array(); - - /** - * List of classnames and locations in filesystem, for situations - * where they deviate from convention etc. - * - * @var array - */ - protected $map = array(); - - - /** - * Constructor - * - * @param array $roots - * @param array $static_map - */ - public function __construct( array $roots, array $static_map = null ) { - $this->roots = $roots; - if ( null !== $static_map ) { - $this->map = $static_map; - } - spl_autoload_register( array( $this, 'autoload' ) ); - } - - /** - * Load classes - * - * @param $class - */ - protected function autoload( $class ) { - // Check for a static mapping first of all - if ( isset( $this->map[ $class ] ) && file_exists( $this->map[ $class ] ) ) { - include $this->map[ $class ]; - return; - } - - // Else scan the namespace roots - foreach ( $this->roots as $namespace => $root_dir ) { - // If the class doesn't belong to this namespace, move on to the next root - if ( 0 !== strpos( $class, $namespace ) ) { - continue; - } - - // Determine the possible path to the class - $path = substr( $class, strlen( $namespace ) + 1 ); - $path = str_replace( '\\', DIRECTORY_SEPARATOR, $path ); - $path = $root_dir . DIRECTORY_SEPARATOR . $path . '.php'; - - // Test for its existence and load if present - if ( file_exists( $path ) ) { - include $path; - } - } - } -} diff --git a/github/src/GitHub_Updater/Base.php b/github/src/GitHub_Updater/Base.php deleted file mode 100644 index 4d165d2..0000000 --- a/github/src/GitHub_Updater/Base.php +++ /dev/null @@ -1,1007 +0,0 @@ -type-repo => $code ) - */ - protected static $error_code = array(); - - /** - * Holds git server types. - * - * @var array - */ - protected static $git_servers = array( - 'github' => 'GitHub', - 'bitbucket' => 'Bitbucket', - 'gitlab' => 'GitLab', - ); - - /** - * Holds extra repo header types. - * - * @var array - */ - protected static $extra_repo_headers = array( - 'branch' => 'Branch', - 'enterprise' => 'Enterprise', - 'gitlab_ce' => 'CE', - ); - - /** - * Constructor. - * Loads options to private static variable. - */ - public function __construct() { - self::$options = get_site_option( 'github_updater', array() ); - $this->add_headers(); - - /* - * Calls in init hook for user capabilities. - */ - add_action( 'init', array( &$this, 'init' ) ); - add_action( 'init', array( &$this, 'remote_update' ) ); - } - - /** - * Instantiate Plugin, Theme, and Settings for proper user capabilities. - */ - public function init() { - if ( current_user_can( 'update_plugins' ) ) { - new Plugin(); - } - if ( current_user_can( 'update_themes' ) ) { - new Theme(); - } - if ( is_admin() && ( current_user_can( 'update_plugins' ) || current_user_can( 'update_themes' ) ) ) { - new Settings(); - } - } - - /** - * Load class for remote updating compatibility. - * - * @return \Fragen\GitHub_Updater\Remote_Update - */ - public function remote_update() { - if ( current_user_can( 'update_plugins' ) || current_user_can( 'update_themes' ) ) { - return new Remote_Update(); - } - } - - /** - * Add extra headers via filter hooks. - */ - public function add_headers() { - add_filter( 'extra_plugin_headers', array( &$this, 'add_plugin_headers' ) ); - add_filter( 'extra_theme_headers', array( &$this, 'add_theme_headers' ) ); - } - - /** - * Add extra headers to get_plugins(). - * - * @param $extra_headers - * - * @return array - */ - public function add_plugin_headers( $extra_headers ) { - $ghu_extra_headers = array( - 'Requires WP' => 'Requires WP', - 'Requires PHP' => 'Requires PHP', - ); - - foreach ( self::$git_servers as $server ) { - $ghu_extra_headers[ $server . 'Plugin URI' ] = $server . ' Plugin URI'; - foreach ( self::$extra_repo_headers as $header ) { - $ghu_extra_headers[ $server . ' ' . $header ] = $server . ' ' . $header; - } - } - - self::$extra_headers = array_unique( array_merge( self::$extra_headers, $ghu_extra_headers ) ); - $extra_headers = array_merge( (array) $extra_headers, (array) $ghu_extra_headers ); - - return $extra_headers; - } - - /** - * Add extra headers to wp_get_themes(). - * - * @param $extra_headers - * - * @return array - */ - public function add_theme_headers( $extra_headers ) { - $ghu_extra_headers = array( - 'Requires WP' => 'Requires WP', - 'Requires PHP' => 'Requires PHP', - ); - - foreach ( self::$git_servers as $server ) { - $ghu_extra_headers[ $server . ' Theme URI' ] = $server . ' Theme URI'; - foreach ( self::$extra_repo_headers as $header ) { - $ghu_extra_headers[ $server . ' ' . $header ] = $server . ' ' . $header; - } - } - - self::$extra_headers = array_unique( array_merge( self::$extra_headers, $ghu_extra_headers ) ); - $extra_headers = array_merge( (array) $extra_headers, (array) $ghu_extra_headers ); - - return $extra_headers; - } - - /** - * Get details of Git-sourced plugins from those that are installed. - * - * @return array Indexed array of associative arrays of plugin details. - */ - protected function get_plugin_meta() { - /* - * Ensure get_plugins() function is available. - */ - include_once( ABSPATH . '/wp-admin/includes/plugin.php' ); - - $plugins = get_plugins(); - $git_plugins = array(); - $update_plugins = get_site_transient( 'update_plugins' ); - if ( empty( $update_plugins) ) { - wp_update_plugins(); - $update_plugins = get_site_transient( 'update_plugins' ); - } - $all_plugins = $update_plugins ? array_merge( (array) $update_plugins->response, (array) $update_plugins->no_update ) : array(); - - foreach ( (array) $plugins as $plugin => $headers ) { - $git_plugin = array(); - - if ( empty( $headers['GitHub Plugin URI'] ) && - empty( $headers['Bitbucket Plugin URI'] ) && - empty( $headers['GitLab Plugin URI'] ) - ) { - continue; - } - - foreach ( (array) self::$extra_headers as $value ) { - $repo_enterprise_uri = null; - - if ( empty( $headers[ $value ] ) || - false === stristr( $value, 'Plugin' ) - ) { - continue; - } - - $header_parts = explode( ' ', $value ); - $repo_parts = $this->_get_repo_parts( $header_parts[0], 'plugin' ); - - if ( $repo_parts['bool'] ) { - $header = $this->parse_header_uri( $headers[ $value ] ); - } - - $self_hosted_parts = array_diff( array_keys( self::$extra_repo_headers ), array( 'branch' ) ); - foreach ( $self_hosted_parts as $part ) { - if ( array_key_exists( $repo_parts[ $part ], $headers ) && - ! empty( $headers[ $repo_parts[ $part ] ] ) - ) { - $repo_enterprise_uri = $headers[ $repo_parts[ $part ] ]; - } - } - - if ( ! empty( $repo_enterprise_uri ) ) { - $repo_enterprise_uri = trim( $repo_enterprise_uri, '/' ); - switch( $header_parts[0] ) { - case 'GitHub': - $repo_enterprise_uri = $repo_enterprise_uri . '/api/v3'; - break; - case 'GitLab': - $repo_enterprise_uri = $repo_enterprise_uri . '/api/v3'; - break; - } - } - - $git_plugin['type'] = $repo_parts['type']; - $git_plugin['uri'] = $repo_parts['base_uri'] . $header['owner_repo']; - $git_plugin['enterprise'] = $repo_enterprise_uri; - $git_plugin['owner'] = $header['owner']; - $git_plugin['repo'] = $header['repo']; - $git_plugin['extended_repo'] = implode( '-', array( $repo_parts['git_server'], $header['owner'], $header['repo'] ) ); - $git_plugin['branch'] = $headers[ $repo_parts['branch'] ]; - $git_plugin['slug'] = $plugin; - $git_plugin['local_path'] = WP_PLUGIN_DIR . '/' . $header['repo'] . '/'; - $git_plugin['local_path_extended'] = WP_PLUGIN_DIR . '/' . $git_plugin['extended_repo'] . '/'; - - $plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $git_plugin['slug'] ); - $git_plugin['author'] = $plugin_data['AuthorName']; - $git_plugin['name'] = $plugin_data['Name']; - $git_plugin['local_version'] = strtolower( $plugin_data['Version'] ); - $git_plugin['sections']['description'] = $plugin_data['Description']; - $git_plugin['dot_org'] = false; - } - if ( isset( $all_plugins[ $plugin ]->id) && 'master' === $git_plugin['branch'] ) { - $git_plugin['dot_org'] = true; - } - - $git_plugins[ $git_plugin['repo'] ] = (object) $git_plugin; - } - - return $git_plugins; - } - - /** - * Reads in WP_Theme class of each theme. - * Populates variable array. - */ - protected function get_theme_meta() { - $git_themes = array(); - $themes = wp_get_themes( array( 'errors' => null ) ); - - foreach ( (array) $themes as $theme ) { - $git_theme = array(); - $repo_uri = null; - $repo_enterprise_uri = null; - - foreach ( (array) self::$extra_headers as $value ) { - - $repo_uri = $theme->get( $value ); - if ( empty( $repo_uri ) || - false === stristr( $value, 'Theme' ) - ) { - continue; - } - - $header_parts = explode( ' ', $value ); - $repo_parts = $this->_get_repo_parts( $header_parts[0], 'theme' ); - - if ( $repo_parts['bool'] ) { - $header = $this->parse_header_uri( $repo_uri ); - } - - $self_hosted_parts = array_diff( array_keys( self::$extra_repo_headers ), array( 'branch' ) ); - foreach ( $self_hosted_parts as $part ) { - $self_hosted = $theme->get( $repo_parts[ $part ] ); - - if ( ! empty( $self_hosted ) ) { - $repo_enterprise_uri = $self_hosted; - } - } - - if ( ! empty( $repo_enterprise_uri ) ) { - $repo_enterprise_uri = trim( $repo_enterprise_uri, '/' ); - switch( $header_parts[0] ) { - case 'GitHub': - $repo_enterprise_uri = $repo_enterprise_uri . '/api/v3'; - break; - case 'GitLab': - $repo_enterprise_uri = $repo_enterprise_uri . '/api/v3'; - break; - } - } - - $git_theme['type'] = $repo_parts['type']; - $git_theme['uri'] = $repo_parts['base_uri'] . $header['owner_repo']; - $git_theme['enterprise'] = $repo_enterprise_uri; - $git_theme['owner'] = $header['owner']; - $git_theme['repo'] = $header['repo']; - $git_theme['extended_repo'] = $header['repo']; - $git_theme['name'] = $theme->get( 'Name' ); - $git_theme['theme_uri'] = $theme->get( 'ThemeURI' ); - $git_theme['author'] = $theme->get( 'Author' ); - $git_theme['local_version'] = strtolower( $theme->get( 'Version' ) ); - $git_theme['sections']['description'] = $theme->get( 'Description' ); - $git_theme['local_path'] = get_theme_root() . '/' . $git_theme['repo'] .'/'; - $git_theme['local_path_extended'] = null; - $git_theme['branch'] = $theme->get( $repo_parts['branch'] ); - } - - /* - * Exit if not git hosted theme. - */ - if ( empty( $git_theme ) ) { - continue; - } - - $git_themes[ $git_theme['repo'] ] = (object) $git_theme; - } - - return $git_themes; - } - - /** - * Set default values for plugin/theme. - * - * @param $type - */ - protected function set_defaults( $type ) { - if ( ! isset( self::$options['branch_switch'] ) ) { - self::$options['branch_switch'] = null; - } - if ( ! isset( self::$options[ $this->$type->repo ] ) ) { - self::$options[ $this->$type->repo ] = null; - add_site_option( 'github_updater', self::$options ); - } - - $this->$type->remote_version = '0.0.0'; - $this->$type->newest_tag = '0.0.0'; - $this->$type->download_link = null; - $this->$type->tags = array(); - $this->$type->rollback = array(); - $this->$type->branches = array(); - $this->$type->requires = null; - $this->$type->tested = null; - $this->$type->donate = null; - $this->$type->contributors = array(); - $this->$type->downloaded = 0; - $this->$type->last_updated = null; - $this->$type->rating = 0; - $this->$type->num_ratings = 0; - $this->$type->transient = array(); - $this->$type->repo_meta = array(); - $this->$type->private = true; - $this->$type->watchers = 0; - $this->$type->forks = 0; - $this->$type->open_issues = 0; - $this->$type->score = 0; - $this->$type->requires_wp_version = '3.8.0'; - $this->$type->requires_php_version = '5.3'; - } - - /** - * Rename the zip folder to be the same as the existing repository folder. - * - * Github delivers zip files as --.zip - * - * @global object $wp_filesystem - * - * @param string $source - * @param string $remote_source - * @param object $upgrader - * - * @return string $source|$corrected_source - */ - public function upgrader_source_selection( $source, $remote_source , $upgrader ) { - - require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; - global $wp_filesystem; - $repo = null; - $matched = false; - $source_base = basename( $source ); - - /* - * Check for upgrade process, return if both are false or - * not of same updater. - */ - if ( ( ! $upgrader instanceof \Plugin_Upgrader && ! $upgrader instanceof \Theme_Upgrader ) || - ( $upgrader instanceof \Plugin_Upgrader && ! $this instanceof Plugin ) || - ( $upgrader instanceof \Theme_Upgrader && ! $this instanceof Theme ) - ) { - return $source; - } - - /* - * Re-create $upgrader object for iThemes Sync - * and possibly other remote upgrade services. - */ - if ( $upgrader instanceof \Plugin_Upgrader && - isset( $upgrader->skin->plugin_info ) - ) { - $_upgrader = new \Plugin_Upgrader( $skin = new \Bulk_Plugin_Upgrader_Skin() ); - $_upgrader->skin->plugin_info = $upgrader->skin->plugin_info; - $upgrader = new \Plugin_Upgrader( $skin = new \Bulk_Plugin_Upgrader_Skin() ); - $upgrader->skin->plugin_info = $_upgrader->skin->plugin_info; - } - if ( $upgrader instanceof \Theme_Upgrader && - isset( $upgrader->skin->theme_info ) - ) { - $_upgrader = new \Theme_Upgrader( $skin = new \Bulk_Theme_Upgrader_Skin() ); - $_upgrader->skin->theme_info = $upgrader->skin->theme_info; - $upgrader = new \Theme_Upgrader( $skin = new \Bulk_Theme_Upgrader_Skin() ); - $upgrader->skin->theme_info = $_upgrader->skin->theme_info; - } - - /* - * Get repo for remote install update process. - */ - if ( ! empty( self::$options['github_updater_install_repo'] ) ) { - $repo = self::$options['github_updater_install_repo']; - } - - /* - * Get/set $repo for updating. - */ - if ( empty( $repo ) ) { - $updates = $this->get_updating_repos(); - foreach ( $updates as $extended => $update ) { - - /* - * Plugin renaming. - */ - if ( $upgrader instanceof \Plugin_Upgrader ) { - - if ( $upgrader->skin instanceof \Plugin_Upgrader_Skin && - $update === dirname( $upgrader->skin->plugin ) || - $extended === dirname( $upgrader->skin->plugin ) - ) { - $matched = true; - } else { - foreach ( self::$git_servers as $git ) { - $header = $this->parse_header_uri( $upgrader->skin->plugin_info[ $git . ' Plugin URI' ] ); - if ( $update === $header['repo'] ) { - $matched = true; - break; - } - } - } - - if ( $matched ) { - if ( ( ! defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) || - ( defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) && ! GITHUB_UPDATER_EXTENDED_NAMING ) ) || - ( $this->config[ $update ]->dot_org && - ( ( ! $this->tag && 'master' === $this->config[ $update ]->branch ) || - ( $this->tag && 'master' === $this->tag) ) ) - ) { - $repo = $update; - } else { - $repo = $extended; - } - break; - } - } - - /* - * Theme renaming. - */ - if ( $upgrader instanceof \Theme_Upgrader && - ( ( $upgrader->skin instanceof \Bulk_Theme_Upgrader_Skin && - $update === $upgrader->skin->theme_info->stylesheet ) || - ( $upgrader->skin instanceof \Theme_Upgrader_Skin && - $update === $upgrader->skin->theme ) ) - ) { - $repo = $update; - break; - } - } - - /* - * Return already corrected $source or wp.org $source. - */ - if ( empty( $repo ) ) { - return $source; - } - } - - $corrected_source = trailingslashit( $remote_source ) . trailingslashit( $repo ); - - $upgrader->skin->feedback( - sprintf( - __( 'Renaming %1$s to %2$s', 'github-updater' ) . '…', - '' . $source_base . '', - '' . basename( $corrected_source ) . '' - ) - ); - - /* - * If we can rename, do so and return the new name. - */ - if ( $wp_filesystem->move( $source, $corrected_source, true ) ) { - $upgrader->skin->feedback( __( 'Rename successful', 'github-updater' ) . '…' ); - return $corrected_source; - } - - /* - * Otherwise, return an error. - */ - $upgrader->skin->feedback( __( 'Unable to rename downloaded repository.', 'github-updater' ) ); - return new \WP_Error(); - } - - /** - * Get dashboard update requested repos and return array of slugs. - * Really does need $_REQUEST for remote update services. - * - * @return array - */ - protected function get_updating_repos() { - $updates = array(); - $request = array_map( 'wp_filter_kses', $_REQUEST ); - $request = apply_filters( 'github_updater_remote_update_request', $request ); - - $request['plugins'] = isset( $request['plugins'] ) ? $request['plugins'] : array(); - $request['plugin'] = isset( $request['plugin'] ) ? (array) $request['plugin'] : array(); - $request['themes'] = isset( $request['themes'] ) ? $request['themes'] : array(); - $request['theme'] = isset( $request['theme'] ) ? (array) $request['theme'] : array(); - - if ( ! empty( $request['plugins'] ) ) { - $request['plugins'] = explode( ',', $request['plugins'] ); - } - if ( ! empty( $request['themes']) ) { - $request['themes'] = explode( ',', $request['themes'] ); - } - - foreach ( array_merge( $request['plugin'], $request['plugins'] ) as $update ) { - $plugin_repo = explode( '/', $update ); - $updates[] = $plugin_repo[0]; - } - - foreach ( array_merge( $request['theme'], $request['themes'] ) as $update ) { - $updates[] = $update; - } - - /* - * Add `git-owner-repo` to index for future renaming option. - */ - foreach ( $updates as $key => $value ) { - $repo = $this->get_repo_slugs( $value ); - if ( $repo['repo'] === $value || $repo['extended_repo'] === $value ) { - unset( $updates[ $key ] ); - $updates[ $repo['extended_repo'] ] = $repo['repo']; - } - } - - return $updates; - } - - /** - * Set array with normal and extended repo names. - * - * @param $slug - * - * @return array - */ - protected function get_repo_slugs( $slug ) { - $arr = array(); - foreach ( $this->config as $repo ) { - if ( $slug === $repo->repo || $slug === $repo->extended_repo ) { - $arr['repo'] = $repo->repo; - $arr['extended_repo'] = $repo->extended_repo; - } - } - - return $arr; - } - - /** - * Take remote file contents as string and parse headers. - * - * @param $contents - * @param $type - * - * @return array - */ - protected function get_file_headers( $contents, $type ) { - - $default_plugin_headers = array( - 'Name' => 'Plugin Name', - 'PluginURI' => 'Plugin URI', - 'Version' => 'Version', - 'Description' => 'Description', - 'Author' => 'Author', - 'AuthorURI' => 'Author URI', - 'TextDomain' => 'Text Domain', - 'DomainPath' => 'Domain Path', - 'Network' => 'Network', - ); - - $default_theme_headers = array( - 'Name' => 'Theme Name', - 'ThemeURI' => 'Theme URI', - 'Description' => 'Description', - 'Author' => 'Author', - 'AuthorURI' => 'Author URI', - 'Version' => 'Version', - 'Template' => 'Template', - 'Status' => 'Status', - 'Tags' => 'Tags', - 'TextDomain' => 'Text Domain', - 'DomainPath' => 'Domain Path', - ); - - if ( false !== strpos( $type, 'plugin' ) ) { - $all_headers = $default_plugin_headers; - } - - if ( false !== strpos( $type, 'theme' ) ) { - $all_headers = $default_theme_headers; - } - - /* - * Make sure we catch CR-only line endings. - */ - $file_data = str_replace( "\r", "\n", $contents ); - - /* - * Merge extra headers and default headers. - */ - $all_headers = array_merge( self::$extra_headers, (array) $all_headers ); - $all_headers = array_unique( $all_headers ); - - foreach ( $all_headers as $field => $regex ) { - if ( preg_match( '/^[ \t\/*#@]*' . preg_quote( $regex, '/' ) . ':(.*)$/mi', $file_data, $match ) && $match[1] ) { - $all_headers[ $field ] = _cleanup_header_comment( $match[1] ); - } else { - $all_headers[ $field ] = ''; - } - } - - return $all_headers; - } - - /** - * Get filename of changelog and return. - * - * @param $type - * - * @return bool or variable - */ - protected function get_changelog_filename( $type ) { - $changelogs = array( 'CHANGES.md', 'CHANGELOG.md', 'changes.md', 'changelog.md' ); - $changes = null; - $local_files = null; - - if ( is_dir( $this->$type->local_path ) ) { - $local_files = scandir( $this->$type->local_path ); - } elseif ( is_dir( $this->$type->local_path_extended ) ) { - $local_files = scandir( $this->$type->local_path_extended ); - } - - $changes = array_intersect( (array) $local_files, $changelogs ); - $changes = array_pop( $changes ); - - if ( ! empty( $changes ) ) { - return $changes; - } - - return false; - } - - - /** - * Function to check if plugin or theme object is able to be updated. - * - * @param $type - * - * @return bool - */ - public function can_update( $type ) { - global $wp_version; - - $remote_is_newer = version_compare( $type->remote_version, $type->local_version, '>' ); - $wp_version_ok = version_compare( $wp_version, $type->requires_wp_version,'>=' ); - $php_version_ok = version_compare( PHP_VERSION, $type->requires_php_version, '>=' ); - - return $remote_is_newer && $wp_version_ok && $php_version_ok; - } - - /** - * Parse URI param returning array of parts. - * - * @param $repo_header - * - * @return array - */ - protected function parse_header_uri( $repo_header ) { - $header_parts = parse_url( $repo_header ); - $header['scheme'] = isset( $header_parts['scheme'] ) ? $header_parts['scheme'] : null; - $header['host'] = isset( $header_parts['host'] ) ? $header_parts['host'] : null; - $owner_repo = trim( $header_parts['path'], '/' ); // strip surrounding slashes - $owner_repo = str_replace( '.git', '', $owner_repo ); //strip incorrect URI ending - $header['path'] = $owner_repo; - $owner_repo = explode( '/', $owner_repo ); - $header['owner'] = $owner_repo[0]; - $header['repo'] = $owner_repo[1]; - $header['owner_repo'] = isset( $header['owner'] ) ? $header['owner'] . '/' . $header['repo'] : null; - $header['base_uri'] = str_replace( $header_parts['path'], '', $repo_header ); - $header['uri'] = isset( $header['scheme'] ) ? trim( $repo_header, '/' ) : null; - - $header = Settings::sanitize( $header ); - - return $header; - } - - /** - * Create repo parts. - * - * @param $repo - * @param $type - * - * @return mixed - */ - private function _get_repo_parts( $repo, $type ) { - $arr['bool'] = false; - $pattern = '/' . strtolower( $repo ) . '_/'; - $type = preg_replace( $pattern, '', $type ); - $repo_types = array( - 'GitHub' => 'github_' . $type, - 'Bitbucket' => 'bitbucket_'. $type, - 'GitLab' => 'gitlab_' . $type, - ); - $repo_base_uris = array( - 'GitHub' => 'https://github.com/', - 'Bitbucket' => 'https://bitbucket.org/', - 'GitLab' => 'https://gitlab.com/', - ); - - if ( array_key_exists( $repo, $repo_types ) ) { - $arr['type'] = $repo_types[ $repo ]; - $arr['git_server'] = strtolower( $repo ); - $arr['base_uri'] = $repo_base_uris[ $repo ]; - $arr['bool'] = true; - foreach ( self::$extra_repo_headers as $key => $value ) { - $arr[ $key ] = $repo . ' ' . $value; - } - } - - return $arr; - } - - /** - * Used to set_site_transient and checks/stores transient id in array. - * - * @param $id - * @param $response - * - * @return bool - */ - protected function set_transient( $id, $response ) { - $transient = 'ghu-' . md5( $this->type->repo . $id ); - if ( ! in_array( $transient, self::$transients, true ) ) { - self::$transients[] = $transient; - } - set_site_transient( $transient, $response, ( self::$hours * HOUR_IN_SECONDS ) ); - - return true; - } - - /** - * Returns site_transient and checks/stores transient id in array. - * - * @param $id - * - * @return mixed - */ - protected function get_transient( $id ) { - $transient = 'ghu-' . md5( $this->type->repo . $id ); - if ( ! in_array( $transient, self::$transients, true ) ) { - self::$transients[] = $transient; - } - - return get_site_transient( $transient ); - } - - /** - * Delete all transients from array of transient ids. - * - * @param $type - * - * @return bool|void - */ - protected function delete_all_transients( $type ) { - $transients = get_site_transient( 'ghu-' . $type ); - if ( ! $transients ) { - return false; - } - - foreach ( $transients as $transient ) { - delete_site_transient( $transient ); - } - delete_site_transient( 'ghu-' . $type ); - } - - /** - * Create transient of $type transients for force-check. - * - * @param $type - * - * @return void|bool - */ - protected function make_force_check_transient( $type ) { - $transient = get_site_transient( 'ghu-' . $type ); - if ( $transient ) { - return false; - } - set_site_transient( 'ghu-' . $type , self::$transients, self::$hours * HOUR_IN_SECONDS ); - self::$transients = array(); - } - - /** - * Set repo object file info. - * - * @param $response - * - * @param $repo - */ - protected function set_file_info( $response, $repo ) { - $repo_parts = $this->_get_repo_parts( $repo, $this->type->type ); - $this->type->transient = $response; - $this->type->remote_version = strtolower( $response['Version'] ); - $this->type->branch = ! empty( $response[ $repo_parts['branch'] ] ) ? $response[$repo_parts['branch'] ] : 'master'; - $this->type->requires_php_version = ! empty( $response['Requires PHP'] ) ? $response['Requires PHP'] : $this->type->requires_php_version; - $this->type->requires_wp_version = ! empty( $response['Requires WP'] ) ? $response['Requires WP'] : $this->type->requires_wp_version; - } - - /** - * Parse tags and set object data. - * - * @param $response - * @param $repo_type - * - * @return bool - */ - protected function parse_tags( $response, $repo_type ) { - $tags = array(); - $rollback = array(); - if ( false !== $response ) { - switch ( $repo_type['repo'] ) { - case 'github': - foreach ( (array) $response as $tag ) { - if ( isset( $tag->name ) && isset( $tag->zipball_url ) ) { - $tags[] = $tag->name; - $rollback[ $tag->name ] = $tag->zipball_url; - } - } - break; - case 'bitbucket': - foreach ( (array) $response as $num => $tag ) { - $download_base = implode( '/', array( $repo_type['base_download'], $this->type->owner, $this->type->repo, 'get/' ) ); - if ( isset( $num ) ) { - $tags[] = $num; - $rollback[ $num ] = $download_base . $num . '.zip'; - } - } - break; - case 'gitlab': - foreach ( (array) $response as $tag ) { - $download_link = implode( '/', array( $repo_type['base_download'], $this->type->owner, $this->type->repo, 'repository/archive.zip' ) ); - $download_link = add_query_arg( 'ref', $tag->name, $download_link ); - if ( isset( $tag->name) ) { - $tags[] = $tag->name; - $rollback[ $tag->name ] = $download_link; - } - } - break; - } - - } - if ( empty( $tags ) ) { - return false; - } - - usort( $tags, 'version_compare' ); - krsort( $rollback ); - - $newest_tag = null; - $newest_tag_key = key( array_slice( $tags, -1, 1, true ) ); - $newest_tag = $tags[ $newest_tag_key ]; - - $this->type->newest_tag = $newest_tag; - $this->type->tags = $tags; - $this->type->rollback = $rollback; - - return true; - } - - /** - * Set data from readme.txt. - * Prefer changelog from CHANGES.md. - * - * @param $response - * - * @return bool - */ - protected function set_readme_info( $response ) { - $readme = array(); - foreach ( $this->type->sections as $section => $value ) { - if ( 'description' === $section ) { - continue; - } - $readme['sections/' . $section ] = $value; - } - foreach ( $readme as $key => $value ) { - $key = explode( '/', $key ); - if ( ! empty( $value ) && 'sections' === $key[0] ) { - unset( $response['sections'][ $key[1] ] ); - } - } - - unset( $response['sections']['screenshots'] ); - unset( $response['sections']['installation'] ); - $this->type->sections = array_merge( (array) $this->type->sections, (array) $response['sections'] ); - $this->type->tested = $response['tested_up_to']; - $this->type->requires = $response['requires_at_least']; - $this->type->donate = $response['donate_link']; - $this->type->contributors = $response['contributors']; - - return true; - } - - /** - * Create some sort of rating from 0 to 100 for use in star ratings. - * I'm really just making this up, more based upon popularity. - * - * @param $repo_meta - * - * @return integer - */ - protected function make_rating( $repo_meta ) { - $watchers = empty( $repo_meta->watchers ) ? $this->type->watchers : $repo_meta->watchers; - $forks = empty( $repo_meta->forks ) ? $this->type->forks : $repo_meta->forks; - $open_issues = empty( $repo_meta->open_issues ) ? $this->type->open_issues : $repo_meta->open_issues; - $score = empty( $repo_meta->score ) ? $this->type->score : $repo_meta->score; //what is this anyway? - - $rating = round( $watchers + ( $forks * 1.5 ) - $open_issues + $score ); - - if ( 100 < $rating ) { - return 100; - } - - return (integer) $rating; - } - -} diff --git a/github/src/GitHub_Updater/Bitbucket_API.php b/github/src/GitHub_Updater/Bitbucket_API.php deleted file mode 100644 index 8191a57..0000000 --- a/github/src/GitHub_Updater/Bitbucket_API.php +++ /dev/null @@ -1,357 +0,0 @@ -type = $type; - parent::$hours = 12; - add_filter( 'http_request_args', array( $this, 'maybe_authenticate_http' ), 10, 2 ); - - if ( ! isset( self::$options['bitbucket_username'] ) ) { - self::$options['bitbucket_username'] = null; - } - if ( ! isset( self::$options['bitbucket_password'] ) ) { - self::$options['bitbucket_password'] = null; - } - add_site_option( 'github_updater', self::$options ); - } - - /** - * Read the remote file and parse headers. - * - * @param $file - * - * @return bool - */ - public function get_remote_info( $file ) { - $response = $this->get_transient( $file ); - - if ( ! $response ) { - if ( empty( $this->type->branch ) ) { - $this->type->branch = 'master'; - } - $response = $this->api( '/1.0/repositories/:owner/:repo/src/' . trailingslashit( $this->type->branch ) . $file ); - - if ( $response ) { - $contents = $response->data; - $response = $this->get_file_headers( $contents, $this->type->type ); - $this->set_transient( $file, $response ); - } - } - - if ( $this->validate_response( $response ) || ! is_array( $response ) ) { - return false; - } - - $this->set_file_info( $response, 'Bitbucket' ); - - return true; - } - - /** - * Get the remote info to for tags. - * - * @return bool - */ - public function get_remote_tag() { - $repo_type = $this->return_repo_type(); - $response = $this->get_transient( 'tags' ); - - if ( ! $response ) { - $response = $this->api( '/1.0/repositories/:owner/:repo/tags' ); - $arr_resp = (array) $response; - - if ( ! $response || ! $arr_resp ) { - $response->message = 'No tags found'; - } - - if ( $response ) { - $this->set_transient( 'tags', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->parse_tags( $response, $repo_type ); - - return true; - } - - /** - * Read the remote CHANGES.md file - * - * @param $changes - * - * @return bool - */ - public function get_remote_changes( $changes ) { - $response = $this->get_transient( 'changes' ); - - if ( ! $response ) { - if ( ! isset( $this->type->branch ) ) { - $this->type->branch = 'master'; - } - $response = $this->api( '/1.0/repositories/:owner/:repo/src/' . trailingslashit( $this->type->branch ) . $changes ); - - if ( ! $response ) { - $response = new \stdClass(); - $response->message = 'No changelog found'; - } - - if ( $response ) { - $this->set_transient( 'changes', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $changelog = $this->get_transient( 'changelog' ); - - if ( ! $changelog ) { - $parser = new \Parsedown; - $changelog = $parser->text( $response->data ); - $this->set_transient( 'changelog', $changelog ); - } - - $this->type->sections['changelog'] = $changelog; - } - - /** - * Read and parse remote readme.txt. - * - * @return bool - */ - public function get_remote_readme() { - if ( ! file_exists( $this->type->local_path . 'readme.txt' ) && - ! file_exists( $this->type->local_path_extended . 'readme.txt' ) - ) { - return false; - } - - $response = $this->get_transient( 'readme' ); - - if ( ! $response ) { - if ( ! isset( $this->type->branch ) ) { - $this->type->branch = 'master'; - } - $response = $this->api( '/1.0/repositories/:owner/:repo/src/' . trailingslashit( $this->type->branch ) . 'readme.txt' ); - - if ( ! $response ) { - $response = new \stdClass(); - $response->message = 'No readme found'; - } - - } - - if ( $response && isset( $response->data ) ) { - $parser = new Readme_Parser; - $response = $parser->parse_readme( $response->data ); - $this->set_transient( 'readme', $response ); - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->set_readme_info( $response ); - - return true; - } - - /** - * Read the repository meta from API - * - * @return bool - */ - public function get_repo_meta() { - $response = $this->get_transient( 'meta' ); - - if ( ! $response ) { - $response = $this->api( '/2.0/repositories/:owner/:repo' ); - - if ( $response ) { - $this->set_transient( 'meta', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->type->repo_meta = $response; - $this->_add_meta_repo_object(); - $this->get_remote_branches(); - - return true; - } - - /** - * Create array of branches and download links as array. - * - * @return bool - */ - public function get_remote_branches() { - $branches = array(); - $response = $this->get_transient( 'branches' ); - - if ( ! $response ) { - $response = $this->api( '/1.0/repositories/:owner/:repo/branches' ); - - if ( $response ) { - foreach ( $response as $branch ) { - $branches[ $branch->branch ] = $this->construct_download_link( false, $branch->branch ); - } - $this->type->branches = $branches; - $this->set_transient( 'branches', $branches ); - return true; - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->type->branches = $response; - - return true; - } - - /** - * Construct $this->type->download_link using Bitbucket API - * - * @param boolean $rollback for theme rollback - * @param boolean $branch_switch for direct branch changing - * - * @return string $endpoint - */ - public function construct_download_link( $rollback = false, $branch_switch = false ) { - $download_link_base = implode( '/', array( 'https://bitbucket.org', $this->type->owner, $this->type->repo, 'get/' ) ); - $endpoint = ''; - - /* - * Check for rollback. - */ - if ( ! empty( $_GET['rollback'] ) && - ( isset( $_GET['action'] ) && 'upgrade-theme' === $_GET['action'] ) && - ( isset( $_GET['theme'] ) && $_GET['theme'] === $this->type->repo ) - ) { - $endpoint .= $rollback . '.zip'; - - // for users wanting to update against branch other than master or not using tags, else use newest_tag - } elseif ( 'master' != $this->type->branch || empty( $this->type->tags ) ) { - $endpoint .= $this->type->branch . '.zip'; - } else { - $endpoint .= $this->type->newest_tag . '.zip'; - } - - /* - * Create endpoint for branch switching. - */ - if ( $branch_switch ) { - $endpoint = $branch_switch . '.zip'; - } - - return $download_link_base . $endpoint; - } - - /** - * Add remote data to type object. - */ - private function _add_meta_repo_object() { - $this->type->rating = $this->make_rating( $this->type->repo_meta ); - $this->type->last_updated = $this->type->repo_meta->updated_on; - $this->type->num_ratings = $this->type->watchers; - $this->type->private = $this->type->repo_meta->is_private; - } - - /** - * Add Basic Authentication $args to http_request_args filter hook - * for private Bitbucket repositories only. - * - * @param $args - * @param $url - * - * @return mixed $args - */ - public function maybe_authenticate_http( $args, $url ) { - if ( ! isset( $this->type ) || false === stristr( $url, 'bitbucket' ) ) { - return $args; - } - - $bitbucket_private = false; - $bitbucket_private_install = false; - - /* - * Check whether attempting to update private Bitbucket repo. - */ - if ( isset( $this->type->repo ) && - ! empty( parent::$options[ $this->type->repo ] ) && - false !== strpos( $url, $this->type->repo ) - ) { - $bitbucket_private = true; - } - - /* - * Check whether attempting to install private Bitbucket repo - * and abort if Bitbucket user/pass not set. - */ - if ( isset( $_POST['option_page'] ) && - 'github_updater_install' === $_POST['option_page'] && - 'bitbucket' === $_POST['github_updater_api'] && - isset( $_POST['is_private'] ) && - ( ! empty( parent::$options['bitbucket_username'] ) || ! empty( parent::$options['bitbucket_password'] ) ) - ) { - $bitbucket_private_install = true; - } - - if ( $bitbucket_private || $bitbucket_private_install ) { - $username = parent::$options['bitbucket_username']; - $password = parent::$options['bitbucket_password']; - $args['headers']['Authorization'] = 'Basic ' . base64_encode( "$username:$password" ); - } - - return $args; - } - - /** - * Added due to abstract class designation, not used for Bitbucket. - * - * @param $git - * @param $endpoint - */ - protected function add_endpoints( $git, $endpoint ) {} - -} diff --git a/github/src/GitHub_Updater/GitHub_API.php b/github/src/GitHub_Updater/GitHub_API.php deleted file mode 100644 index bfcd702..0000000 --- a/github/src/GitHub_Updater/GitHub_API.php +++ /dev/null @@ -1,401 +0,0 @@ -type = $type; - parent::$hours = 12; - } - - /** - * Read the remote file and parse headers. - * - * @param $file - * - * @return bool - */ - public function get_remote_info( $file ) { - $response = $this->get_transient( $file ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/contents/' . $file ); - if ( ! isset( $response->content ) ) { - return false; - } - - if ( $response ) { - $contents = base64_decode( $response->content ); - $response = $this->get_file_headers( $contents, $this->type->type ); - $this->set_transient( $file, $response ); - } - } - - if ( $this->validate_response( $response ) || ! is_array( $response ) ) { - return false; - } - - $this->set_file_info( $response, 'GitHub' ); - - return true; - } - - /** - * Get remote info for tags. - * - * @return bool - */ - public function get_remote_tag() { - $repo_type = $this->return_repo_type(); - $response = $this->get_transient( 'tags' ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/tags' ); - - if ( ! $response ) { - $response = new \stdClass(); - $response->message = 'No tags found'; - } - - if ( $response ) { - $this->set_transient( 'tags', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->parse_tags( $response, $repo_type ); - - return true; - } - - /** - * Read the remote CHANGES.md file. - * - * @param $changes - * - * @return bool - */ - public function get_remote_changes( $changes ) { - $response = $this->get_transient( 'changes' ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/contents/' . $changes ); - - if ( $response ) { - $this->set_transient( 'changes', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $changelog = $this->get_transient( 'changelog' ); - - if ( ! $changelog ) { - $parser = new \Parsedown; - $changelog = $parser->text( base64_decode( $response->content ) ); - $this->set_transient( 'changelog', $changelog ); - } - - $this->type->sections['changelog'] = $changelog; - - return true; - } - - /** - * Read and parse remote readme.txt. - * - * @return bool - */ - public function get_remote_readme() { - if ( ! file_exists( $this->type->local_path . 'readme.txt' ) && - ! file_exists( $this->type->local_path_extended . 'readme.txt' ) - ) { - return false; - } - - $response = $this->get_transient( 'readme' ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/contents/readme.txt' ); - } - - if ( $response && isset( $response->content ) ) { - $parser = new Readme_Parser; - $response = $parser->parse_readme( base64_decode( $response->content ) ); - $this->set_transient( 'readme', $response ); - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->set_readme_info( $response ); - - return true; - } - - /** - * Read the repository meta from API. - * - * @return bool - */ - public function get_repo_meta() { - $response = $this->get_transient( 'meta' ); - $meta_query = '?q=' . $this->type->repo . '+user:' . $this->type->owner; - - if ( ! $response ) { - $response = $this->api( '/search/repositories' . $meta_query ); - - if ( $response ) { - $this->set_transient( 'meta', $response ); - } - } - - if ( $this->validate_response( $response ) || empty( $response->items ) ) { - return false; - } - - $this->type->repo_meta = $response->items[0]; - $this->_add_meta_repo_object(); - $this->get_remote_branches(); - - return true; - } - - /** - * Create array of branches and download links as array. - * - * @return bool - */ - public function get_remote_branches() { - $branches = array(); - $response = $this->get_transient( 'branches' ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/branches' ); - - if ( $response ) { - foreach ( $response as $branch ) { - $branches[ $branch->name ] = $this->construct_download_link( false, $branch->name ); - } - $this->type->branches = $branches; - $this->set_transient( 'branches', $branches ); - return true; - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->type->branches = $response; - - return true; - } - - /** - * Construct $this->type->download_link using Repository Contents API - * @url http://developer.github.com/v3/repos/contents/#get-archive-link - * - * @param boolean $rollback for theme rollback - * @param boolean $branch_switch for direct branch changing - * - * @return string $endpoint - */ - public function construct_download_link( $rollback = false, $branch_switch = false ) { - /* - * Check if using GitHub Self-Hosted. - */ - if ( ! empty( $this->type->enterprise ) ) { - $github_base = $this->type->enterprise; - } else { - $github_base = 'https://api.github.com'; - } - - $download_link_base = implode( '/', array( $github_base, 'repos', $this->type->owner, $this->type->repo, 'zipball/' ) ); - $endpoint = ''; - - /* - * Check for rollback. - */ - if ( ! empty( $_GET['rollback'] ) && - ( isset( $_GET['action'] ) && 'upgrade-theme' === $_GET['action'] ) && - ( isset( $_GET['theme'] ) && $_GET['theme'] === $this->type->repo ) - ) { - $endpoint .= $rollback; - - /* - * For users wanting to update against branch other than master - * or if not using tags, else use newest_tag. - */ - } elseif ( 'master' != $this->type->branch || empty( $this->type->tags ) ) { - $endpoint .= $this->type->branch; - } else { - $endpoint .= $this->type->newest_tag; - } - - /* - * Create endpoint for branch switching. - */ - if ( $branch_switch ) { - $endpoint = $branch_switch; - } - - $asset = $this->get_asset(); - if ( $asset && ! $branch_switch ) { - return $asset; - } - - if ( ! empty( parent::$options[ $this->type->repo ] ) ) { - $endpoint = add_query_arg( 'access_token', parent::$options[ $this->type->repo ], $endpoint ); - } elseif ( ! empty( parent::$options['github_access_token'] ) && empty( $this->type->enterprise ) ) { - $endpoint = add_query_arg( 'access_token', parent::$options['github_access_token'], $endpoint ); - } - - return $download_link_base . $endpoint; - } - - /** - * Add remote data to type object. - */ - private function _add_meta_repo_object() { - $this->type->rating = $this->make_rating( $this->type->repo_meta ); - $this->type->last_updated = $this->type->repo_meta->pushed_at; - $this->type->num_ratings = $this->type->repo_meta->watchers; - $this->type->private = $this->type->repo_meta->private; - } - - /** - * Create GitHub API endpoints. - * - * @param $git object - * @param $endpoint string - * - * @return string $endpoint - */ - protected function add_endpoints( $git, $endpoint ) { - if ( ! empty( parent::$options[ $git->type->repo ] ) ) { - $endpoint = add_query_arg( 'access_token', parent::$options[ $git->type->repo ], $endpoint ); - } elseif ( ! empty( parent::$options['github_access_token'] ) ) { - $endpoint = add_query_arg( 'access_token', parent::$options['github_access_token'], $endpoint ); - } - - /* - * If a branch has been given, only check that for the remote info. - * If it's not been given, GitHub will use the Default branch. - */ - if ( ! empty( $git->type->branch ) ) { - $endpoint = add_query_arg( 'ref', $git->type->branch, $endpoint ); - } - - /* - * If using GitHub Self-Hosted header return this endpoint. - */ - if ( ! empty( $git->type->enterprise ) ) { - return $git->type->enterprise . remove_query_arg( 'access_token', $endpoint ); - } - - return $endpoint; - } - - /** - * Calculate and store time until rate limit reset. - * - * @param $response - * @param $repo - */ - protected static function _ratelimit_reset( $response, $repo ) { - if ( isset( $response['headers']['x-ratelimit-reset'] ) ) { - $reset = (integer) $response['headers']['x-ratelimit-reset']; - $wait = date( 'i', $reset - time() ); - parent::$error_code[ $repo ] = array_merge( parent::$error_code[ $repo ], array( 'git' => 'github', 'wait' => $wait ) ); - } - } - - /** - * Get uploaded release asset to use in place of tagged release. - * - * @return bool|string - */ - protected function get_asset() { - if ( empty( $this->type->newest_tag ) ) { - return false; - } - $response = $this->get_transient( 'asset' ); - - if ( ! $response ) { - $response = $this->api( '/repos/:owner/:repo/releases/latest' ); - $this->set_transient( 'asset' , $response ); - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - if ( $response instanceof \stdClass ) { - - if ( empty( $response->assets ) ) { - $response = new \stdClass(); - $response->message = false; - $this->set_transient( 'asset', $response ); - return false; - } - foreach ( (array) $response->assets as $asset ) { - if ( isset ( $asset->browser_download_url ) && - false !== stristr( $asset->browser_download_url, $this->type->newest_tag ) - ) { - $this->set_transient( 'asset', $asset->browser_download_url ); - $response = $asset->browser_download_url; - } - } - } - - if ( ! is_string( $response ) ) { - return false; - } - - if ( false !== stristr( $response, $this->type->newest_tag ) ) { - if ( ! empty( parent::$options[ $this->type->repo ] ) ) { - $response = add_query_arg( 'access_token', parent::$options[ $this->type->repo ], $response ); - } elseif ( ! empty( parent::$options['github_access_token'] ) && empty( $this->type->enterprise ) ) { - $response = add_query_arg( 'access_token', parent::$options['github_access_token'], $response ); - } - - return $response; - } - } - -} diff --git a/github/src/GitHub_Updater/GitLab_API.php b/github/src/GitHub_Updater/GitLab_API.php deleted file mode 100644 index 32e585d..0000000 --- a/github/src/GitHub_Updater/GitLab_API.php +++ /dev/null @@ -1,431 +0,0 @@ -type = $type; - parent::$hours = 12; - - if ( ! isset( self::$options['gitlab_private_token'] ) ) { - self::$options['gitlab_private_token'] = null; - } - if ( ! isset( self::$options['gitlab_enterprise_token'] ) ) { - self::$options['gitlab_enterprise_token'] = null; - } - if ( - empty( self::$options['gitlab_private_token'] ) || - ( empty( self::$options['gitlab_enterprise_token'] ) && ! empty( $type->enterprise ) ) - ) { - Messages::create_error_message( 'gitlab' ); - } - add_site_option( 'github_updater', self::$options ); - } - - /** - * Read the remote file and parse headers. - * - * @param $file - * - * @return bool - */ - public function get_remote_info( $file ) { - $response = $this->get_transient( $file ); - - if ( ! $response ) { - $id = $this->get_gitlab_id(); - self::$method = 'file'; - - if ( empty( $this->type->branch ) ) { - $this->type->branch = 'master'; - } - - $response = $this->api( '/projects/' . $id . '/repository/files?file_path=' . $file ); - - if ( empty( $response ) ) { - return false; - } - - if ( $response ) { - $contents = base64_decode( $response->content ); - $response = $this->get_file_headers( $contents, $this->type->type ); - $this->set_transient( $file, $response ); - } - } - - if ( $this->validate_response( $response ) || ! is_array( $response ) ) { - return false; - } - - $this->set_file_info( $response, 'GitLab' ); - - return true; - } - - /** - * Get remote info for tags. - * - * @return bool - */ - public function get_remote_tag() { - $repo_type = $this->return_repo_type(); - $response = $this->get_transient( 'tags' ); - - - if ( ! $response ) { - $id = $this->get_gitlab_id(); - self::$method = 'tags'; - $response = $this->api( '/projects/' . $id . '/repository/tags' ); - - if ( ! $response ) { - $response = new \stdClass(); - $response->message = 'No tags found'; - } - - if ( $response ) { - $this->set_transient( 'tags', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->parse_tags( $response, $repo_type ); - - return true; - } - - /** - * Read the remote CHANGES.md file. - * - * @param $changes - * - * @return bool - */ - public function get_remote_changes( $changes ) { - $response = $this->get_transient( 'changes' ); - - if ( ! $response ) { - $id = $this->get_gitlab_id(); - self::$method = 'changes'; - $response = $this->api( '/projects/' . $id . '/repository/files?file_path=' . $changes ); - - if ( $response ) { - $this->set_transient( 'changes', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $changelog = $this->get_transient( 'changelog' ); - - if ( ! $changelog ) { - $parser = new \Parsedown; - $changelog = $parser->text( base64_decode( $response->content ) ); - $this->set_transient( 'changelog', $changelog ); - } - - $this->type->sections['changelog'] = $changelog; - - return true; - } - - /** - * Read and parse remote readme.txt. - * - * @return bool - */ - public function get_remote_readme() { - if ( ! file_exists( $this->type->local_path . 'readme.txt' ) && - ! file_exists( $this->type->local_path_extended . 'readme.txt' ) - ) { - return false; - } - - $response = $this->get_transient( 'readme' ); - - if ( ! $response ) { - $id = $this->get_gitlab_id(); - self::$method = 'readme'; - $response = $this->api( '/projects/' . $id . '/repository/files?file_path=readme.txt' ); - - if ( $response ) { - $parser = new Readme_Parser; - $response = $parser->parse_readme( base64_decode( $response->content ) ); - $this->set_transient( 'readme', $response ); - } - } - - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->set_readme_info( $response ); - - return true; - } - - /** - * Read the repository meta from API. - * - * @return bool - */ - public function get_repo_meta() { - - $response = $this->get_transient( 'meta' ); - - if ( ! $response ) { - self::$method = 'meta'; - $projects = $this->get_transient( 'projects' ); - - // exit if transient is empty - if ( ! $projects ) { - return false; - } - - foreach ( $projects as $project ) { - if ( $this->type->repo === $project->name ) { - $response = $project; - } - } - - if ( $response ) { - $this->set_transient( 'meta', $response ); - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->type->repo_meta = $response; - $this->_add_meta_repo_object(); - $this->get_remote_branches(); - - return true; - } - - /** - * Create array of branches and download links as array. - * - * @return bool - */ - public function get_remote_branches() { - $branches = array(); - $response = $this->get_transient( 'branches' ); - - if ( ! $response ) { - $id = $this->get_gitlab_id(); - self::$method = 'branches'; - $response = $this->api( '/projects/' . $id . '/repository/branches' ); - - if ( $response ) { - foreach ( $response as $branch ) { - $branches[ $branch->name ] = $this->construct_download_link( false, $branch->name ); - } - $this->type->branches = $branches; - $this->set_transient( 'branches', $branches ); - return true; - } - } - - if ( $this->validate_response( $response ) ) { - return false; - } - - $this->type->branches = $response; - - return true; - } - - /** - * Construct $this->type->download_link using GitLab API. - * - * @param boolean $rollback for theme rollback - * @param boolean $branch_switch for direct branch changing - * - * @return string $endpoint - */ - public function construct_download_link( $rollback = false, $branch_switch = false ) { - /* - * Check if using GitLab CE/Enterprise. - */ - if ( ! empty( $this->type->enterprise ) ) { - $gitlab_base = $this->type->enterprise; - } else { - $gitlab_base = 'https://gitlab.com'; - } - - $download_link_base = implode( '/', array( $gitlab_base, $this->type->owner, $this->type->repo, 'repository/archive.zip' ) ); - $endpoint = ''; - - /* - * Check for rollback. - */ - if ( ! empty( $_GET['rollback'] ) && - ( isset( $_GET['action'] ) && 'upgrade-theme' === $_GET['action'] ) && - ( isset( $_GET['theme'] ) && $_GET['theme'] === $this->type->repo ) - ) { - $endpoint .= $rollback; - } elseif ( ! empty( $this->type->branch ) ) { - $endpoint = add_query_arg( 'ref', $this->type->branch, $endpoint ); - } - - /* - * If a branch has been given, only check that for the remote info. - * If it's not been given, GitLab will use the Default branch. - * If branch is master and tags are used, use newest tag. - */ - if ( 'master' === $this->type->branch && ! empty( $this->type->tags ) ) { - $endpoint = remove_query_arg( 'ref', $endpoint ); - $endpoint = add_query_arg( 'ref', $this->type->newest_tag, $endpoint ); - } - - /* - * Create endpoint for branch switching. - */ - if ( $branch_switch ) { - $endpoint = remove_query_arg( 'ref', $endpoint ); - $endpoint = add_query_arg( 'ref', $branch_switch, $endpoint ); - } - - if ( ! empty( parent::$options[ 'gitlab_private_token' ] ) ) { - $endpoint = add_query_arg( 'private_token', parent::$options['gitlab_private_token'], $endpoint ); - } - - /* - * If using GitLab CE/Enterprise header return this endpoint. - */ - if ( ! empty( $this->type->enterprise ) ) { - $endpoint = remove_query_arg( 'private_token', $endpoint ); - if ( ! empty( parent::$options['gitlab_enterprise_token'] ) ) { - $endpoint = add_query_arg( 'private_token', parent::$options['gitlab_enterprise_token'], $endpoint ); - } - - return $this->type->enterprise . $endpoint; - } - - - return $download_link_base . $endpoint; - } - - /** - * Add remote data to type object. - */ - private function _add_meta_repo_object() { - //$this->type->rating = $this->make_rating( $this->type->repo_meta ); - $this->type->last_updated = $this->type->repo_meta->last_activity_at; - //$this->type->num_ratings = $this->type->repo_meta->watchers; - $this->type->private = ! $this->type->repo_meta->public; - } - - /** - * Create GitLab API endpoints. - * - * @param $git object - * @param $endpoint string - * - * @return string - */ - protected function add_endpoints( $git, $endpoint ) { - if ( ! empty( parent::$options['gitlab_private_token'] ) ) { - $endpoint = add_query_arg( 'private_token', parent::$options['gitlab_private_token'], $endpoint ); - } - - switch ( self::$method ) { - case 'projects': - case 'meta': - case 'tags': - break; - case 'file': - case 'changes': - case 'readme': - $endpoint = add_query_arg( 'ref', $git->type->branch, $endpoint ); - break; - default: - break; - } - - /* - * If using GitLab CE/Enterprise header return this endpoint. - */ - if ( ! empty( $git->type->enterprise ) ) { - $endpoint = remove_query_arg( 'private_token', $endpoint ); - if ( ! empty( parent::$options['gitlab_enterprise_token'] ) ) { - $endpoint = add_query_arg( 'private_token', parent::$options['gitlab_enterprise_token'], $endpoint ); - } - - return $git->type->enterprise . $endpoint; - } - - return $endpoint; - } - - /** - * Get GitLab project ID. - * - * @return bool|null - */ - public function get_gitlab_id() { - $id = null; - $response = $this->get_transient( 'projects' ); - - if ( ! $response ) { - self::$method = 'projects'; - $response = $this->api( '/projects' ); - if ( empty( $response ) ) { - $id = rtrim( urlencode( $this->type->slug ), '.php' ); - return $id; - } - } - - foreach ( $response as $project ) { - if ( $this->type->repo === $project->name ) { - $id = $project->id; - $this->set_transient( 'projects', $response ); - } - } - - return $id; - } - -} diff --git a/github/src/GitHub_Updater/Install.php b/github/src/GitHub_Updater/Install.php deleted file mode 100644 index f971212..0000000 --- a/github/src/GitHub_Updater/Install.php +++ /dev/null @@ -1,392 +0,0 @@ -/ directly from GitHub Updater. - * - * Class Install - * @package Fragen\GitHub_Updater - */ -class Install extends Base { - - /** - * Class options. - * - * @var array - */ - protected static $install = array(); - - /** - * Constructor. - * Need class-wp-upgrader.php for upgrade classes. - * - * @param $type - */ - public function __construct( $type ) { - require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; - $this->install( $type ); - - wp_enqueue_script( 'ghu-install', plugins_url( basename( dirname( dirname( __DIR__ ) ) ) . '/js/ghu_install.js' ), array(), false, true ); - } - - /** - * Install remote plugin or theme. - * - * @param $type - * - * @return bool - */ - public function install( $type ) { - - if ( isset( $_POST['option_page'] ) && 'github_updater_install' == $_POST['option_page'] ) { - if ( empty( $_POST['github_updater_branch'] ) ) { - $_POST['github_updater_branch'] = 'master'; - } - - /* - * Exit early if no repo entered. - */ - if ( empty( $_POST['github_updater_repo'] ) ) { - echo '

'; - _e( 'A repository URI is required.', 'github-updater' ); - echo '

'; - - return false; - } - - /* - * Transform URI to owner/repo - */ - $headers = Base::parse_header_uri( $_POST['github_updater_repo'] ); - $_POST['github_updater_repo'] = $headers['owner_repo']; - - self::$install = Settings::sanitize( $_POST ); - self::$install['repo'] = $headers['repo']; - - /* - * Create GitHub endpoint. - * Save Access Token if present. - * Check for GitHub Self-Hosted. - */ - if ( 'github' === self::$install['github_updater_api'] ) { - - if ( 'github.com' === $headers['host'] || empty( $headers['host'] ) ) { - $github_base = 'https://api.github.com'; - $headers['host'] = 'github.com'; - } else { - $github_base = $headers['base_uri'] . '/api/v3'; - } - - self::$install['download_link'] = $github_base . '/repos/' . self::$install['github_updater_repo'] . '/zipball/' . self::$install['github_updater_branch']; - - /* - * If asset is entered install it. - */ - if ( false !== stristr( $headers['path'], 'releases/download' ) ) { - self::$install['download_link'] = $headers['uri']; - } - - if ( ! empty( self::$install['github_access_token'] ) ) { - self::$install['download_link'] = add_query_arg( 'access_token', self::$install['github_access_token'], self::$install['download_link'] ); - parent::$options[ self::$install['repo'] ] = self::$install['github_access_token']; - } elseif ( ! empty( parent::$options['github_access_token'] ) && - ( 'github.com' === $headers['host'] || empty( $headers['host'] ) ) - ) { - self::$install['download_link'] = add_query_arg( 'access_token', parent::$options['github_access_token'], self::$install['download_link'] ); - } - } - - /* - * Create Bitbucket endpoint and instantiate class Bitbucket_API. - * Save private setting if present. - * Ensures `maybe_authenticate_http()` is available. - */ - if ( 'bitbucket' === self::$install['github_updater_api'] ) { - - self::$install['download_link'] = 'https://bitbucket.org/' . self::$install['github_updater_repo'] . '/get/' . self::$install['github_updater_branch'] . '.zip'; - if ( isset( self::$install['is_private'] ) ) { - parent::$options[ self::$install['repo'] ] = 1; - } - - new Bitbucket_API( (object) $type ); - } - - /* - * Create GitLab endpoint. - * Check for GitLab Self-Hosted. - */ - if ( 'gitlab' === self::$install['github_updater_api'] ) { - - if ( 'gitlab.com' === $headers['host'] || empty( $headers['host'] ) ) { - $gitlab_base = 'https://gitlab.com'; - $headers['host'] = 'gitlab.com'; - } else { - $gitlab_base = $headers['base_uri']; - } - - self::$install['download_link'] = implode( '/', array( $gitlab_base, self::$install['github_updater_repo'], 'repository/archive.zip' ) ); - self::$install['download_link'] = add_query_arg( 'ref', self::$install['github_updater_branch'], self::$install['download_link'] ); - - if ( ! empty( self::$install['gitlab_private_token'] ) ) { - self::$install['download_link'] = add_query_arg( 'private_token', self::$install['gitlab_private_token'], self::$install['download_link'] ); - - if ( 'gitlab.com' === $headers['host'] ) { - parent::$options['gitlab_private_token'] = self::$install['gitlab_private_token']; - } else { - parent::$options['gitlab_enterprise_token'] = self::$install['gitlab_private_token']; - } - } elseif ( ! empty( parent::$options['gitlab_private_token'] ) ) { - self::$install['download_link'] = add_query_arg( 'private_token', parent::$options['gitlab_private_token'], self::$install['download_link'] ); - } - } - - parent::$options['github_updater_install_repo'] = self::$install['repo']; - if ( ( defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) && GITHUB_UPDATER_EXTENDED_NAMING ) && - 'plugin' === $type - ) { - parent::$options['github_updater_install_repo'] = implode( '-', array( self::$install['github_updater_api'], $headers['owner'], self::$install['repo'] ) ); - } - - update_site_option( 'github_updater', parent::$options ); - $url = self::$install['download_link']; - $nonce = wp_nonce_url( $url ); - - if ( 'plugin' === $type ) { - $plugin = self::$install['repo']; - - /* - * Create a new instance of Plugin_Upgrader. - */ - $upgrader = new \Plugin_Upgrader( $skin = new \Plugin_Installer_Skin( compact( 'type', 'title', 'url', 'nonce', 'plugin', 'api' ) ) ); - } - - if ( 'theme' === $type ) { - $theme = self::$install['repo']; - - /* - * Create a new instance of Theme_Upgrader. - */ - $upgrader = new \Theme_Upgrader( $skin = new \Theme_Installer_Skin( compact( 'type', 'title', 'url', 'nonce', 'theme', 'api' ) ) ); - } - - /* - * Perform the action and install the plugin from the $source urldecode(). - * Flush cache so we can make sure that the installed plugins/themes list is always up to date. - */ - $upgrader->install( $url ); - wp_cache_flush(); - } - - if ( ! isset( $_POST['option_page'] ) || ! ( 'github_updater_install' === $_POST['option_page'] ) ) { - $this->create_form( $type ); - } - } - - /** - * Create Install Plugin or Install Theme page. - * - * @param $type - */ - public function create_form( $type ) { - $this->register_settings( $type ); - ?> -
- -
- - - - - - - - - - - - - -
-

- ' . $repo['name'] . '' - ); - echo ' ' . $repo['code']; - ?> - -
- '; - printf( - __( 'It looks like you are running into GitHub API rate limits. Be sure and configure a %sPersonal Access Token%s to avoid this issue.', 'github-updater' ), - '', - '' - ); - ?> - - -
- - -

-
- -
-

- -

-
- config = $this->get_plugin_meta(); - - if ( empty( $this->config ) ) { - return false; - } - if ( isset( $_GET['force-check'] ) ) { - $this->delete_all_transients( 'plugins' ); - } - - foreach ( (array) $this->config as $plugin ) { - $this->repo_api = null; - switch( $plugin->type ) { - case 'github_plugin': - $this->repo_api = new GitHub_API( $plugin ); - break; - case 'bitbucket_plugin': - $this->repo_api = new Bitbucket_API( $plugin ); - break; - case 'gitlab_plugin'; - $this->repo_api = new GitLab_API( $plugin ); - break; - } - - if ( is_null( $this->repo_api ) ) { - continue; - } - - $this->{$plugin->type} = $plugin; - $this->set_defaults( $plugin->type ); - - if ( $this->repo_api->get_remote_info( basename( $plugin->slug ) ) ) { - $this->repo_api->get_repo_meta(); - $this->repo_api->get_remote_tag(); - $changelog = $this->get_changelog_filename( $plugin->type ); - if ( $changelog ) { - $this->repo_api->get_remote_changes( $changelog ); - } - $this->repo_api->get_remote_readme(); - $plugin->download_link = $this->repo_api->construct_download_link(); - } - - /* - * Update plugin transient with rollback (branch switching) data. - */ - if ( ! empty( $_GET['rollback'] ) && - ( isset( $_GET['plugin'] ) && $_GET['plugin'] === $plugin->slug ) - ) { - $this->tag = $_GET['rollback']; - $updates_transient = get_site_transient('update_plugins'); - $rollback = array( - 'slug' => $plugin->repo, - 'plugin' => $plugin->slug, - 'new_version' => $this->tag, - 'url' => $plugin->uri, - 'package' => $this->repo_api->construct_download_link( false, $this->tag ), - ); - $updates_transient->response[ $plugin->slug ] = (object) $rollback; - set_site_transient( 'update_plugins', $updates_transient ); - } - - add_action( "after_plugin_row_$plugin->slug", array( &$this, 'wp_plugin_update_row' ), 15, 3 ); - } - - $this->make_force_check_transient( 'plugins' ); - - add_filter( 'plugin_row_meta', array( &$this, 'plugin_row_meta' ), 10, 2 ); - add_filter( 'pre_set_site_transient_update_plugins', array( &$this, 'pre_set_site_transient_update_plugins' ) ); - add_filter( 'plugins_api', array( &$this, 'plugins_api' ), 99, 3 ); - add_filter( 'upgrader_source_selection', array( &$this, 'upgrader_source_selection' ), 10, 3 ); - add_filter( 'http_request_args', array( 'Fragen\\GitHub_Updater\\API', 'http_request_args' ), 10, 2 ); - - Settings::$ghu_plugins = $this->config; - } - - - /** - * Add branch switch row to plugins page. - * - * @param $plugin_file - * @param $plugin_data - * - * @return bool - */ - public function wp_plugin_update_row( $plugin_file, $plugin_data ) { - $options = get_site_option( 'github_updater' ); - if ( empty( $options['branch_switch'] ) ) { - return false; - } - - $wp_list_table = _get_list_table( 'WP_MS_Themes_List_Table' ); - $plugin = $this->get_repo_slugs( dirname( $plugin_file ) ); - if ( ! empty( $plugin ) ) { - $id = $plugin['repo'] . '-id'; - $branches = isset( $this->config[ $plugin['repo'] ] ) ? $this->config[ $plugin['repo'] ]->branches : null; - } else { - return false; - } - - /* - * Get current branch. - */ - foreach ( parent::$git_servers as $server ) { - $branch_key = $server . ' Branch'; - $branch = ! empty( $plugin_data[ $branch_key ] ) ? $plugin_data[ $branch_key ] : 'master'; - if ( 'master' !== $branch ) { - break; - } - } - - /* - * Create after_plugin_row_ - */ - echo '
'; - - printf( __( 'Current branch is `%1$s`, try %2$sanother branch%3$s.', 'github-updater' ), - $branch, - '', - '' - ); - - print( '' ); - echo '
'; - } - - /** - * Add 'View details' link to plugins page. - * - * @param $links - * @param $file - * - * @return array $links - */ - public function plugin_row_meta( $links, $file ) { - $regex_pattern = '/(.*)<\/a>/'; - $repo = dirname ( $file ); - $slugs = $this->get_repo_slugs( $repo ); - $repo = ! empty( $slugs ) ? $slugs['repo'] : null; - - /* - * Sanity check for some commercial plugins. - */ - if ( ! isset( $links[2] ) ) { - return $links; - } - - preg_match( $regex_pattern, $links[2], $matches ); - - /* - * Remove 'Visit plugin site' link in favor or 'View details' link. - */ - if ( array_key_exists( $repo, $this->config ) ) { - if ( false !== stristr( $links[2], 'Visit plugin site' ) ) { - unset( $links[2] ); - $links[] = sprintf( '%s', - network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $repo . - '&TB_iframe=true&width=600&height=550' ), - __( 'View details', 'github-updater' ) - ); - } - } - - return $links; - } - - /** - * Put changelog in plugins_api, return WP.org data as appropriate - * - * @param $false - * @param $action - * @param $response - * - * @return mixed - */ - public function plugins_api( $false, $action, $response ) { - if ( ! ( 'plugin_information' === $action ) ) { - return $false; - } - - $wp_repo_data = get_site_transient( 'ghu-' . md5( $response->slug . 'wporg' ) ); - if ( ! $wp_repo_data ) { - $wp_repo_data = wp_remote_get( 'https://api.wordpress.org/plugins/info/1.0/' . $response->slug ); - if ( is_wp_error( $wp_repo_data ) ) { - return false; - } - - set_site_transient( 'ghu-' . md5( $response->slug . 'wporg' ), $wp_repo_data, ( 12 * HOUR_IN_SECONDS ) ); - } - - $wp_repo_body = unserialize( $wp_repo_data['body'] ); - if ( is_object( $wp_repo_body ) ) { - $response = $wp_repo_body; - } - - foreach ( (array) $this->config as $plugin ) { - /* - * Fix for extended naming. - */ - $repos = $this->get_repo_slugs( $plugin->repo ); - if ( $response->slug === $repos['repo'] || $response->slug === $repos['extended_repo'] ) { - $response->slug = $repos['repo']; - } - $contributors = array(); - if ( strtolower( $response->slug ) === strtolower( $plugin->repo ) ) { - if ( is_object( $wp_repo_body ) && 'master' === $plugin->branch ) { - return $response; - } - - $response->slug = $plugin->repo; - $response->plugin_name = $plugin->name; - $response->name = $plugin->name; - $response->author = $plugin->author; - $response->homepage = $plugin->uri; - $response->version = $plugin->remote_version; - $response->sections = $plugin->sections; - $response->requires = $plugin->requires; - $response->tested = $plugin->tested; - $response->downloaded = $plugin->downloaded; - $response->donate_link = $plugin->donate; - $response->last_updated = $plugin->last_updated; - $response->download_link = $plugin->download_link; - foreach ( $plugin->contributors as $contributor ) { - $contributors[ $contributor ] = '//profiles.wordpress.org/' . $contributor; - } - $response->contributors = $contributors; - if ( ! $plugin->private ) { - $response->num_ratings = $plugin->num_ratings; - $response->rating = $plugin->rating; - } - } - } - - return $response; - } - - /** - * Hook into pre_set_site_transient_update_plugins to update from GitHub. - * - * @param $transient - * - * @return mixed - */ - public function pre_set_site_transient_update_plugins( $transient ) { - - foreach ( (array) $this->config as $plugin ) { - $response = null; - - if ( $this->can_update( $plugin ) ) { - $response = array( - 'slug' => dirname( $plugin->slug ), - 'plugin' => $plugin->slug, - 'new_version' => $plugin->remote_version, - 'url' => $plugin->uri, - 'package' => $plugin->download_link, - ); - - /* - * If branch is 'master' and plugin is in wp.org repo then pull update from wp.org - */ - if ( $plugin->dot_org ) { - continue; - } - - /* - * Don't overwrite if branch switching. - */ - if ( $this->tag && - ( isset( $_GET['plugin'] ) && $plugin->slug === $_GET['plugin'] ) - ) { - continue; - } - - $transient->response[ $plugin->slug ] = (object) $response; - } - } - - return $transient; - } - -} diff --git a/github/src/GitHub_Updater/Readme_Parser.php b/github/src/GitHub_Updater/Readme_Parser.php deleted file mode 100644 index 10b5c15..0000000 --- a/github/src/GitHub_Updater/Readme_Parser.php +++ /dev/null @@ -1,82 +0,0 @@ -parse_readme_contents( $file_contents ); - } - - /** - * @param $text - * @param bool $markdown - * - * @return mixed|string - */ - public function filter_text( $text, $markdown = false ) { // fancy, Markdown - $text = trim($text); - $text = call_user_func( array( get_parent_class( $this ), 'code_trick' ), $text, $markdown ); // A better parser than Markdown's for: backticks -> CODE - - if ( $markdown ) { // Parse markdown. - $parser = new \Parsedown; - $text = $parser->text( $text ); - } - - $allowed = array( - 'a' => array( - 'href' => array(), - 'title' => array(), - 'rel' => array()), - 'blockquote' => array('cite' => array()), - 'br' => array(), - 'cite' => array(), - 'p' => array(), - 'code' => array(), - 'pre' => array(), - 'em' => array(), - 'strong' => array(), - 'ul' => array(), - 'ol' => array(), - 'li' => array(), - 'h3' => array(), - 'h4' => array() - ); - - $text = balanceTags($text); - - $text = wp_kses( $text, $allowed ); - $text = trim($text); - return $text; - } - -} diff --git a/github/src/GitHub_Updater/Remote_Update.php b/github/src/GitHub_Updater/Remote_Update.php deleted file mode 100644 index b8dc153..0000000 --- a/github/src/GitHub_Updater/Remote_Update.php +++ /dev/null @@ -1,101 +0,0 @@ -ghu_plugin_name : 'plugin_action_links_' . $this->ghu_plugin_name, array( $this, 'plugin_action_links' ) ); - } - - /** - * Define tabs for Settings page. - * By defining in a method, strings can be translated. - * - * @return array - */ - private function _settings_tabs() { - return array( - 'github_updater_settings' => __( 'Settings', 'github-updater' ), - 'github_updater_install_plugin' => __( 'Install Plugin', 'github-updater' ), - 'github_updater_install_theme' => __( 'Install Theme', 'github-updater' ), - ); - } - - /** - * Add options page. - */ - public function add_plugin_page() { - if ( is_multisite() ) { - add_submenu_page( - 'settings.php', - __( 'GitHub Updater Settings', 'github-updater' ), - __( 'GitHub Updater', 'github-updater' ), - 'manage_network', - 'github-updater', - array( $this, 'create_admin_page' ) - ); - } else { - add_options_page( - __( 'GitHub Updater Settings', 'github-updater' ), - __( 'GitHub Updater', 'github-updater' ), - 'manage_options', - 'github-updater', - array( $this, 'create_admin_page' ) - ); - } - } - - /** - * Renders setting tabs. - * - * Walks through the object's tabs array and prints them one by one. - * Provides the heading for the settings page. - * - * @access private - */ - private function _options_tabs() { - $current_tab = isset( $_GET['tab'] ) ? $_GET['tab'] : 'github_updater_settings'; - echo ''; - } - - /** - * Options page callback. - */ - public function create_admin_page() { - $action = is_multisite() ? 'edit.php?action=github-updater' : 'options.php'; - $tab = isset( $_GET['tab'] ) ? $_GET['tab'] : 'github_updater_settings'; - $logo = plugins_url( basename( dirname( dirname( __DIR__ ) ) ) . '/assets/GitHub_Updater_logo_small.png' ); - ?> -
-

- GitHub Updater logo -
-

- _options_tabs(); ?> - -

- - -
- -
- - - -
- ghu_tokens(); - - /* - * Add basic plugin settings. - */ - add_settings_section( - 'github_updater_settings', - __( 'GitHub Updater Settings', 'github-updater' ), - array( $this, 'print_section_ghu_settings'), - 'github_updater_install_settings' - ); - - add_settings_field( - 'branch_switch', - __( 'Enable Plugin Branch Switching', 'github-updater' ), - array( $this, 'token_callback_checkbox' ), - 'github_updater_install_settings', - 'github_updater_settings', - array( 'id' => 'branch_switch' ) - ); - - /* - * Add settings for GitHub Personal Access Token. - */ - add_settings_section( - 'github_access_token', - __( 'Personal GitHub Access Token', 'github-updater' ), - array( $this, 'print_section_github_access_token' ), - 'github_updater_install_settings' - ); - - add_settings_field( - 'github_access_token', - __( 'GitHub Access Token', 'github-updater' ), - array( $this, 'token_callback_text' ), - 'github_updater_install_settings', - 'github_access_token', - array( 'id' => 'github_access_token' ) - ); - - /* - * Show section for private GitHub repositories. - */ - if ( self::$github_private ) { - add_settings_section( - 'github_id', // ID - __( 'GitHub Private Settings', 'github-updater' ), // Title - array( $this, 'print_section_github_info' ), - 'github_updater_install_settings' // Page - ); - } - - /* - * Add setting for GitLab.com, GitLab Community Edition. - * or GitLab Enterprise Private Token. - */ - if ( self::$gitlab || self::$gitlab_enterprise ) { - add_settings_section( - 'gitlab_settings', - __( 'GitLab Private Settings', 'github-updater' ), - array( $this, 'print_section_gitlab_token' ), - 'github_updater_install_settings' - ); - } - - if ( self::$gitlab ) { - add_settings_field( - 'gitlab_private_token', - __( 'GitLab.com Private Token', 'github-updater' ), - array( $this, 'token_callback_text' ), - 'github_updater_install_settings', - 'gitlab_settings', - array( 'id' => 'gitlab_private_token' ) - ); - } - - if ( self::$gitlab_enterprise ) { - add_settings_field( - 'gitlab_enterprise_token', - __( 'GitLab CE or GitLab Enterprise Private Token', 'github-updater' ), - array( $this, 'token_callback_text' ), - 'github_updater_install_settings', - 'gitlab_settings', - array( 'id' => 'gitlab_enterprise_token' ) - ); - } - - /* - * Add settings for Bitbucket Username and Password. - */ - add_settings_section( - 'bitbucket_user', - __( 'Bitbucket Private Settings', 'github-updater' ), - array( $this, 'print_section_bitbucket_username' ), - 'github_updater_install_settings' - ); - - add_settings_field( - 'bitbucket_username', - __( 'Bitbucket Username', 'github-updater' ), - array( $this, 'token_callback_text' ), - 'github_updater_install_settings', - 'bitbucket_user', - array( 'id' => 'bitbucket_username' ) - ); - - add_settings_field( - 'bitbucket_password', - __( 'Bitbucket Password', 'github-updater' ), - array( $this, 'token_callback_text' ), - 'github_updater_install_settings', - 'bitbucket_user', - array( 'id' => 'bitbucket_password' ) - ); - - /* - * Show section for private Bitbucket repositories. - */ - if ( self::$bitbucket_private ) { - add_settings_section( - 'bitbucket_id', - __( 'Bitbucket Private Repositories', 'github-updater' ), - array( $this, 'print_section_bitbucket_info' ), - 'github_updater_install_settings' - ); - } - - /* - * Show if no private repositories are present. - */ - if ( ! self::$github_private && ! self::$bitbucket_private ) { - add_settings_section( - null, - __( 'No private repositories are installed.', 'github-updater' ), - array(), - 'github_updater_install_settings' - ); - } - - if ( isset( $_POST['github_updater'] ) && ! is_multisite() ) { - update_site_option( 'github_updater', self::sanitize( $_POST['github_updater'] ) ); - } - } - - /** - * Create and return settings fields for private repositories. - * - * @return void - */ - public function ghu_tokens() { - $ghu_options_keys = array(); - $ghu_tokens = array_merge( self::$ghu_plugins, self::$ghu_themes ); - - foreach ( $ghu_tokens as $token ) { - $type = ''; - $setting_field = array(); - $ghu_options_keys[ $token->repo ] = null; - - /* - * Check to see if it's a private repo and set variables. - */ - if ( $token->private ) { - if ( false !== strpos( $token->type, 'github' ) && ! self::$github_private ) { - self::$github_private = true; - } - if ( false !== strpos( $token->type, 'bitbucket' ) && ! self::$bitbucket_private ) { - self::$bitbucket_private = true; - } - } - - /* - * Set boolean if GitLab header found. - */ - if ( false !== strpos( $token->type, 'gitlab' ) && ! self::$gitlab ) { - self::$gitlab = true; - } - - /* - * Set boolean if GitLab CE/Enterprise header found. - */ - if ( $token->enterprise && ! self::$gitlab_enterprise ) { - self::$gitlab_enterprise = true; - } - - /* - * Next if not a private repo. - */ - if ( ! $token->private ) { - continue; - } - - if ( false !== strpos( $token->type, 'theme') ) { - $type = __( 'Theme:', 'github-updater' ) . ' '; - } - - $setting_field['id'] = $token->repo; - $setting_field['title'] = $type . $token->name; - $setting_field['page'] = 'github_updater_install_settings'; - - switch ( $token->type ) { - case ( strpos( $token->type, 'github' ) ): - $setting_field['section'] = 'github_id'; - $setting_field['callback_method'] = array( $this, 'token_callback_text' ); - $setting_field['callback'] = $token->repo; - break; - case( strpos( $token->type, 'bitbucket' ) ): - $setting_field['section'] = 'bitbucket_id'; - $setting_field['callback_method'] = array( $this, 'token_callback_checkbox' ); - $setting_field['callback'] = $token->repo; - break; - case ( strpos( $token->type, 'gitlab' ) ): - $setting_field['section'] = 'gitlab_id'; - $setting_field['callback_method'] = array( $this, 'token_callback_checkbox' ); - $setting_field['callback'] = $token->repo; - break; - } - - add_settings_field( - $setting_field['id'], - $setting_field['title'], - $setting_field['callback_method'], - $setting_field['page'], - $setting_field['section'], - array( 'id' => $setting_field['callback'] ) - ); - } - - /* - * Unset options that are no longer present and update options. - */ - $ghu_unset_keys = array_diff_key( parent::$options, $ghu_options_keys ); - unset( $ghu_unset_keys['github_access_token'] ); - unset( $ghu_unset_keys['branch_switch'] ); - unset( $ghu_unset_keys['bitbucket_username'] ); - unset( $ghu_unset_keys['bitbucket_password'] ); - if ( self::$gitlab ) { - unset( $ghu_unset_keys['gitlab_private_token'] ); - } - if ( self::$gitlab_enterprise ) { - unset( $ghu_unset_keys['gitlab_enterprise_token'] ); - } - if ( ! empty( $ghu_unset_keys ) ) { - foreach ( $ghu_unset_keys as $key => $value ) { - unset( parent::$options [ $key ] ); - } - update_site_option( 'github_updater', parent::$options ); - } - } - - /** - * Sanitize each setting field as needed. - * - * @param array $input Contains all settings fields as array keys - * - * @return array - */ - public static function sanitize( $input ) { - $new_input = array(); - foreach ( (array) $input as $id => $value ) { - $new_input[ sanitize_key( $id ) ] = sanitize_text_field( $input[ $id ] ); - } - - return $new_input; - } - - /** - * Print the GitHub Updater text. - */ - public function print_section_ghu_settings() { - if ( defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) && GITHUB_UPDATER_EXTENDED_NAMING ) { - _e( 'Extended Naming is active.', 'github-updater' ); - } - if ( ! defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) || - ( defined( 'GITHUB_UPDATER_EXTENDED_NAMING' ) && ! GITHUB_UPDATER_EXTENDED_NAMING ) - ) { - _e( 'Extended Naming is not active.', 'github-updater' ); - } - printf( '
' . __( 'Extended Naming renames plugin directories %s to prevent possible conflicts with WP.org plugins.', 'github-updater'), '<git>-<owner>-<repo>'); - printf( '
' . __( 'Activate Extended Naming by setting %s', 'github-updater' ), 'define( \'GITHUB_UPDATER_EXTENDED_NAMING\', true );' ); - print( '

' . __( 'Check to enable branch switching from the Plugins page.', 'github-updater' ) . '

'); - } - - /** - * Print the GitHub text. - */ - public function print_section_github_info() { - _e( 'Enter your GitHub Access Token. Leave empty for public repositories.', 'github-updater' ); - } - - /** - * Print the GitHub Personal Access Token text. - */ - public function print_section_github_access_token() { - _e( 'Enter your personal GitHub Access Token to avoid API access limits.', 'github-updater' ); - } - - /** - * Print the Bitbucket repo text. - */ - public function print_section_bitbucket_info() { - _e( 'Check box if private repository. Leave unchecked for public repositories.', 'github-updater' ); - } - - /** - * Print the Bitbucket user/pass text. - */ - public function print_section_bitbucket_username() { - _e( 'Enter your personal Bitbucket username and password.', 'github-updater' ); - } - - /** - * Print the GitLab Private Token text. - */ - public function print_section_gitlab_token() { - _e( 'Enter your GitLab.com, GitLab CE, or GitLab Enterprise Private Token.', 'github-updater' ); - } - - /** - * Get the settings option array and print one of its values. - * - * @param $args - */ - public function token_callback_text( $args ) { - $name = isset( parent::$options[ $args['id' ] ] ) ? esc_attr( parent::$options[ $args['id'] ] ) : ''; - $type = stristr( $args['id'], 'password' ) ? 'password' : 'text'; - ?> - - - - 'github-updater', - 'updated' => 'true', - ), - network_admin_url( 'settings.php' ) - ) ); - exit; - } - - /** - * Add setting link to plugin page. - * Applied to the list of links to display on the plugins page (beside the activate/deactivate links). - * - * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/plugin_action_links_(plugin_file_name) - * - * @param $links - * - * @return array - */ - public function plugin_action_links( $links ) { - $settings_page = is_multisite() ? 'settings.php' : 'options-general.php'; - $link = array( '' . __( 'Settings', 'github-updater' ) . '' ); - - return array_merge( $links, $link ); - } - -} diff --git a/github/src/GitHub_Updater/Theme.php b/github/src/GitHub_Updater/Theme.php deleted file mode 100644 index d05bfd7..0000000 --- a/github/src/GitHub_Updater/Theme.php +++ /dev/null @@ -1,451 +0,0 @@ -config = $this->get_theme_meta(); - if ( empty( $this->config ) ) { - return false; - } - if ( isset( $_GET['force-check'] ) ) { - $this->delete_all_transients( 'themes' ); - } - - foreach ( (array) $this->config as $theme ) { - $this->repo_api = null; - switch( $theme->type ) { - case 'github_theme': - $this->repo_api = new GitHub_API( $theme ); - break; - case 'bitbucket_theme': - $this->repo_api = new Bitbucket_API( $theme ); - break; - case 'gitlab_theme': - $this->repo_api = new GitLab_API( $theme ); - break; - } - - if ( is_null( $this->repo_api ) ) { - continue; - } - - $this->{$theme->type} = $theme; - $this->set_defaults( $theme->type ); - - if ( $this->repo_api->get_remote_info( 'style.css' ) ) { - $this->repo_api->get_repo_meta(); - $this->repo_api->get_remote_tag(); - $changelog = $this->get_changelog_filename( $theme->type ); - if ( $changelog ) { - $this->repo_api->get_remote_changes( $changelog ); - } - $theme->download_link = $this->repo_api->construct_download_link(); - } - - /* - * Update theme transient with rollback data. - */ - if ( ! empty( $_GET['rollback'] ) && - ( isset( $_GET['theme'] ) && $_GET['theme'] === $theme->repo ) - ) { - $this->tag = $_GET['rollback']; - $updates_transient = get_site_transient('update_themes'); - $rollback = array( - 'new_version' => $this->tag, - 'url' => $theme->uri, - 'package' => $this->repo_api->construct_download_link( $this->tag, false ), - ); - $updates_transient->response[ $theme->repo ] = $rollback; - set_site_transient( 'update_themes', $updates_transient ); - } - - /* - * Remove WordPress update row in theme row, only in multisite. - * Add update row to theme row, only in multisite. - */ - if ( is_multisite() ) { - add_action( 'after_theme_row', array( &$this, 'remove_after_theme_row' ), 10, 2 ); - if ( ! $this->tag ) { - add_action( "after_theme_row_$theme->repo", array( &$this, 'wp_theme_update_row' ), 10, 2 ); - } - } - - } - - $this->make_force_check_transient( 'themes' ); - - if ( ! is_multisite() ) { - add_filter( 'wp_prepare_themes_for_js', array( &$this, 'customize_theme_update_html' ) ); - } - - $update = array( 'do-core-reinstall', 'do-core-upgrade' ); - if ( empty( $_GET['action'] ) || ! in_array( $_GET['action'], $update, true ) ) { - add_filter( 'pre_set_site_transient_update_themes', array( &$this, 'pre_set_site_transient_update_themes' ) ); - } - - add_filter( 'themes_api', array( &$this, 'themes_api' ), 99, 3 ); - add_filter( 'upgrader_source_selection', array( &$this, 'upgrader_source_selection' ), 10, 3 ); - add_filter( 'http_request_args', array( 'Fragen\\GitHub_Updater\\API', 'http_request_args' ), 10, 2 ); - - Settings::$ghu_themes = $this->config; - } - - - /** - * Put changelog in plugins_api, return WP.org data as appropriate. - * - * @param $false - * @param $action - * @param $response - * - * @return mixed - */ - public function themes_api( $false, $action, $response ) { - if ( ! ( 'theme_information' === $action ) ) { - return $false; - } - - /* - * Early return $false for adding themes from repo - */ - if ( isset( $response->fields ) && ! $response->fields['sections'] ) { - return $false; - } - - foreach ( (array) $this->config as $theme ) { - if ( $response->slug === $theme->repo ) { - $response->slug = $theme->repo; - $response->name = $theme->name; - $response->homepage = $theme->uri; - $response->version = $theme->remote_version; - $response->sections = $theme->sections; - $response->description = implode( "\n", $theme->sections ); - $response->author = $theme->author; - $response->preview_url = $theme->theme_uri; - $response->requires = $theme->requires; - $response->tested = $theme->tested; - $response->downloaded = $theme->downloaded; - $response->last_updated = $theme->last_updated; - $response->rating = $theme->rating; - $response->num_ratings = $theme->num_ratings; - if ( $theme->private ) { - add_action( 'admin_head', array( $this, 'remove_rating_in_private_repo' ) ); - } - } - } - add_action( 'admin_head', array( $this, 'fix_display_none_in_themes_api' ) ); - - return $response; - } - - /** - * Fix for new issue in 3.9 :-( - */ - public function fix_display_none_in_themes_api() { - echo ''; - } - - /** - * Remove star rating for private themes. - */ - public function remove_rating_in_private_repo() { - echo ''; - } - - /** - * Add custom theme update row, from /wp-admin/includes/update.php - * - * @author Seth Carstens - */ - public function wp_theme_update_row( $theme_key, $theme ) { - $current = get_site_transient( 'update_themes' ); - $themes_allowedtags = array( - 'a' => array( 'href' => array(), 'title' => array() ), - 'abbr' => array( 'title' => array() ), - 'acronym' => array( 'title' => array() ), - 'code' => array(), - 'em' => array(), - 'strong' => array(), - ); - $theme_name = wp_kses( $theme['Name'], $themes_allowedtags ); - $wp_list_table = _get_list_table( 'WP_MS_Themes_List_Table' ); - $install_url = self_admin_url( "theme-install.php" ); - $details_url = add_query_arg( - array( - 'tab' => 'theme-information', - 'theme' => $theme_key, - 'TB_iframe' => 'true', - 'width' => 270, - 'height' => 400 - ), - $install_url ); - - if ( isset( $current->up_to_date[ $theme_key ] ) ) { - $rollback = $current->up_to_date[ $theme_key ]['rollback']; - $rollback_keys = array_keys( $rollback ); - echo '
'; - _e( 'Theme is up-to-date!', 'github-updater' ); - echo ' '; - if ( count( $rollback ) > 0 ) { - array_shift( $rollback_keys ); //don't show newest tag, it should be release version - echo ''; - _e( 'Rollback to:', 'github-updater' ); - echo ' '; - // display last three tags - for ( $i = 0; $i < 3 ; $i++ ) { - $tag = array_shift( $rollback_keys ); - if ( empty( $tag ) ) { - break; - } - if ( $i > 0 ) { - echo ", "; - } - printf( '%s', - wp_nonce_url( self_admin_url( 'update.php?action=upgrade-theme&theme=' ) . $theme_key, 'upgrade-theme_' . $theme_key ), - '&rollback=' . urlencode( $tag ), - $tag - ); - } - } else { - _e( 'No previous tags to rollback to.', 'github-updater' ); - } - } - - if ( isset( $current->response[ $theme_key ] ) ) { - $r = $current->response[ $theme_key ]; - echo '
'; - if ( empty( $r['package'] ) ) { - printf( __( 'GitHub Updater shows a new version of %s available.', 'github-updater' ), - $theme_name - ); - printf( ' ', - esc_url( $details_url ), - esc_attr( $theme_name ) - ); - printf( __( 'View version %s details.', 'github-updater' ), - $r['new_version'] - ); - echo ''; - _e( 'Automatic update is unavailable for this theme.', 'github-updater' ); - echo ''; - } else { - printf( __( 'GitHub Updater shows a new version of %s available.', 'github-updater' ), - $theme_name - ); - printf( ' ', - esc_url( $details_url ), - esc_attr( $theme_name ) - ); - printf( __( 'View version %1$s details%2$s or %3$supdate now%4$s.', 'github-updater' ), - $r['new_version'], - '', - '', - '' - ); - } - - do_action( "in_theme_update_message-$theme_key", $theme, $r ); - } - echo '
'; - } - - /** - * Remove default after_theme_row_$stylesheet. - * - * @author @grappler - * - * @param $theme_key - * @param $theme - */ - public function remove_after_theme_row( $theme_key, $theme ) { - - foreach ( parent::$git_servers as $server ) { - $repo_header = $server . ' Theme URI'; - $repo_uri = $theme->get( $repo_header ); - if ( empty( $repo_uri ) ) { - continue; - } - - remove_action( "after_theme_row_$theme_key", 'wp_theme_update_row', 10 ); - } - } - - /** - * Call update theme messaging if needed for single site installation - * - * @author Seth Carstens - * - * @param $prepared_themes - * - * @return mixed - */ - public function customize_theme_update_html( $prepared_themes ) { - - foreach ( (array) $this->config as $theme ) { - if ( empty( $prepared_themes[ $theme->repo ] ) ) { - continue; - } - - if ( ! empty( $prepared_themes[ $theme->repo ]['hasUpdate'] ) ) { - $prepared_themes[ $theme->repo ]['update'] = $this->_append_theme_actions_content( $theme ); - } else { - $prepared_themes[ $theme->repo ]['description'] .= $this->_append_theme_actions_content( $theme ); - } - } - - return $prepared_themes; - } - - /** - * Create theme update messaging - * - * @author Seth Carstens - * - * @param object $theme - * - * @return string (content buffer) - */ - private function _append_theme_actions_content( $theme ) { - - $details_url = self_admin_url( "theme-install.php?tab=theme-information&theme=$theme->repo&TB_iframe=true&width=270&height=400" ); - $theme_update_transient = get_site_transient( 'update_themes' ); - - /** - * If the theme is outdated, display the custom theme updater content. - * If theme is not present in theme_update transient response ( theme is not up to date ) - */ - if ( empty( $theme_update_transient->up_to_date[$theme->repo] ) ) { - $update_url = wp_nonce_url( self_admin_url( 'update.php?action=upgrade-theme&theme=' ) . urlencode( $theme->repo ), 'upgrade-theme_' . $theme->repo ); - ob_start(); - ?> -
- name - ); - printf( ' ', - esc_url( $details_url ), - esc_attr( $theme->name ) - ); - printf( __( 'View version %1$s details%2$s or %3$supdate now%4$s.', 'github-updater' ), - $theme->remote_version, - '', - '', - '' - ); - ?> -
- repo ), 'upgrade-theme_' . $theme->repo ), '&rollback=' ); - - ?> -

', - '' - ); - ?> -

- - config as $theme ) { - if ( empty( $theme->uri ) ) { - continue; - } - - $update = array( - 'theme' => $theme->repo, - 'new_version' => $theme->remote_version, - 'url' => $theme->uri, - 'package' => $theme->download_link, - ); - - if ( $this->can_update( $theme ) ) { - $transient->response[ $theme->repo ] = $update; - } else { // up-to-date! - $transient->up_to_date[ $theme->repo ]['rollback'] = $theme->rollback; - $transient->up_to_date[ $theme->repo ]['response'] = $update; - } - } - - return $transient; - } - -} diff --git a/github/uninstall.php b/github/uninstall.php deleted file mode 100644 index e7ef29c..0000000 --- a/github/uninstall.php +++ /dev/null @@ -1,33 +0,0 @@ -Definitions = array(); - - # standardize line breaks - $text = str_replace("\r\n", "\n", $text); - $text = str_replace("\r", "\n", $text); - - # replace tabs with spaces - $text = str_replace("\t", ' ', $text); - - # remove surrounding line breaks - $text = trim($text, "\n"); - - # split text into lines - $lines = explode("\n", $text); - - # iterate through lines to identify blocks - $markup = $this->lines($lines); - - # trim line breaks - $markup = trim($markup, "\n"); - - return $markup; - } - - # - # Setters - # - - private $breaksEnabled; - - function setBreaksEnabled($breaksEnabled) - { - $this->breaksEnabled = $breaksEnabled; - - return $this; - } - - # - # Lines - # - - protected $BlockTypes = array( - '#' => array('Atx'), - '*' => array('Rule', 'List'), - '+' => array('List'), - '-' => array('Setext', 'Table', 'Rule', 'List'), - '0' => array('List'), - '1' => array('List'), - '2' => array('List'), - '3' => array('List'), - '4' => array('List'), - '5' => array('List'), - '6' => array('List'), - '7' => array('List'), - '8' => array('List'), - '9' => array('List'), - ':' => array('Table'), - '<' => array('Comment', 'Markup'), - '=' => array('Setext'), - '>' => array('Quote'), - '_' => array('Rule'), - '`' => array('FencedCode'), - '|' => array('Table'), - '~' => array('FencedCode'), - ); - - # ~ - - protected $DefinitionTypes = array( - '[' => array('Reference'), - ); - - # ~ - - protected $unmarkedBlockTypes = array( - 'CodeBlock', - ); - - # - # Blocks - # - - private function lines(array $lines) - { - $CurrentBlock = null; - - foreach ($lines as $line) - { - if (chop($line) === '') - { - if (isset($CurrentBlock)) - { - $CurrentBlock['interrupted'] = true; - } - - continue; - } - - $indent = 0; - - while (isset($line[$indent]) and $line[$indent] === ' ') - { - $indent ++; - } - - $text = $indent > 0 ? substr($line, $indent) : $line; - - # ~ - - $Line = array('body' => $line, 'indent' => $indent, 'text' => $text); - - # ~ - - if (isset($CurrentBlock['incomplete'])) - { - $Block = $this->{'addTo'.$CurrentBlock['type']}($Line, $CurrentBlock); - - if (isset($Block)) - { - $CurrentBlock = $Block; - - continue; - } - else - { - if (method_exists($this, 'complete'.$CurrentBlock['type'])) - { - $CurrentBlock = $this->{'complete'.$CurrentBlock['type']}($CurrentBlock); - } - - unset($CurrentBlock['incomplete']); - } - } - - # ~ - - $marker = $text[0]; - - if (isset($this->DefinitionTypes[$marker])) - { - foreach ($this->DefinitionTypes[$marker] as $definitionType) - { - $Definition = $this->{'identify'.$definitionType}($Line, $CurrentBlock); - - if (isset($Definition)) - { - $this->Definitions[$definitionType][$Definition['id']] = $Definition['data']; - - continue 2; - } - } - } - - # ~ - - $blockTypes = $this->unmarkedBlockTypes; - - if (isset($this->BlockTypes[$marker])) - { - foreach ($this->BlockTypes[$marker] as $blockType) - { - $blockTypes []= $blockType; - } - } - - # - # ~ - - foreach ($blockTypes as $blockType) - { - $Block = $this->{'identify'.$blockType}($Line, $CurrentBlock); - - if (isset($Block)) - { - $Block['type'] = $blockType; - - if ( ! isset($Block['identified'])) - { - $Elements []= $CurrentBlock['element']; - - $Block['identified'] = true; - } - - if (method_exists($this, 'addTo'.$blockType)) - { - $Block['incomplete'] = true; - } - - $CurrentBlock = $Block; - - continue 2; - } - } - - # ~ - - if (isset($CurrentBlock) and ! isset($CurrentBlock['type']) and ! isset($CurrentBlock['interrupted'])) - { - $CurrentBlock['element']['text'] .= "\n".$text; - } - else - { - $Elements []= $CurrentBlock['element']; - - $CurrentBlock = $this->buildParagraph($Line); - - $CurrentBlock['identified'] = true; - } - } - - # ~ - - if (isset($CurrentBlock['incomplete']) and method_exists($this, 'complete'.$CurrentBlock['type'])) - { - $CurrentBlock = $this->{'complete'.$CurrentBlock['type']}($CurrentBlock); - } - - # ~ - - $Elements []= $CurrentBlock['element']; - - unset($Elements[0]); - - # ~ - - $markup = $this->elements($Elements); - - # ~ - - return $markup; - } - - # - # Atx - - protected function identifyAtx($Line) - { - if (isset($Line['text'][1])) - { - $level = 1; - - while (isset($Line['text'][$level]) and $Line['text'][$level] === '#') - { - $level ++; - } - - $text = trim($Line['text'], '# '); - - $Block = array( - 'element' => array( - 'name' => 'h' . min(6, $level), - 'text' => $text, - 'handler' => 'line', - ), - ); - - return $Block; - } - } - - # - # Code - - protected function identifyCodeBlock($Line) - { - if ($Line['indent'] >= 4) - { - $text = substr($Line['body'], 4); - - $Block = array( - 'element' => array( - 'name' => 'pre', - 'handler' => 'element', - 'text' => array( - 'name' => 'code', - 'text' => $text, - ), - ), - ); - - return $Block; - } - } - - protected function addToCodeBlock($Line, $Block) - { - if ($Line['indent'] >= 4) - { - if (isset($Block['interrupted'])) - { - $Block['element']['text']['text'] .= "\n"; - - unset($Block['interrupted']); - } - - $Block['element']['text']['text'] .= "\n"; - - $text = substr($Line['body'], 4); - - $Block['element']['text']['text'] .= $text; - - return $Block; - } - } - - protected function completeCodeBlock($Block) - { - $text = $Block['element']['text']['text']; - - $text = htmlspecialchars($text, ENT_NOQUOTES, 'UTF-8'); - - $Block['element']['text']['text'] = $text; - - return $Block; - } - - # - # Comment - - protected function identifyComment($Line) - { - if (isset($Line['text'][3]) and $Line['text'][3] === '-' and $Line['text'][2] === '-' and $Line['text'][1] === '!') - { - $Block = array( - 'element' => $Line['body'], - ); - - if (preg_match('/-->$/', $Line['text'])) - { - $Block['closed'] = true; - } - - return $Block; - } - } - - protected function addToComment($Line, array $Block) - { - if (isset($Block['closed'])) - { - return; - } - - $Block['element'] .= "\n" . $Line['body']; - - if (preg_match('/-->$/', $Line['text'])) - { - $Block['closed'] = true; - } - - return $Block; - } - - # - # Fenced Code - - protected function identifyFencedCode($Line) - { - if (preg_match('/^(['.$Line['text'][0].']{3,})[ ]*([\w-]+)?[ ]*$/', $Line['text'], $matches)) - { - $Element = array( - 'name' => 'code', - 'text' => '', - ); - - if (isset($matches[2])) - { - $class = 'language-'.$matches[2]; - - $Element['attributes'] = array( - 'class' => $class, - ); - } - - $Block = array( - 'char' => $Line['text'][0], - 'element' => array( - 'name' => 'pre', - 'handler' => 'element', - 'text' => $Element, - ), - ); - - return $Block; - } - } - - protected function addToFencedCode($Line, $Block) - { - if (isset($Block['complete'])) - { - return; - } - - if (isset($Block['interrupted'])) - { - $Block['element']['text']['text'] .= "\n"; - - unset($Block['interrupted']); - } - - if (preg_match('/^'.$Block['char'].'{3,}[ ]*$/', $Line['text'])) - { - $Block['element']['text']['text'] = substr($Block['element']['text']['text'], 1); - - $Block['complete'] = true; - - return $Block; - } - - $Block['element']['text']['text'] .= "\n".$Line['body'];; - - return $Block; - } - - protected function completeFencedCode($Block) - { - $text = $Block['element']['text']['text']; - - $text = htmlspecialchars($text, ENT_NOQUOTES, 'UTF-8'); - - $Block['element']['text']['text'] = $text; - - return $Block; - } - - # - # List - - protected function identifyList($Line) - { - list($name, $pattern) = $Line['text'][0] <= '-' ? array('ul', '[*+-]') : array('ol', '[0-9]+[.]'); - - if (preg_match('/^('.$pattern.'[ ]+)(.*)/', $Line['text'], $matches)) - { - $Block = array( - 'indent' => $Line['indent'], - 'pattern' => $pattern, - 'element' => array( - 'name' => $name, - 'handler' => 'elements', - ), - ); - - $Block['li'] = array( - 'name' => 'li', - 'handler' => 'li', - 'text' => array( - $matches[2], - ), - ); - - $Block['element']['text'] []= & $Block['li']; - - return $Block; - } - } - - protected function addToList($Line, array $Block) - { - if ($Block['indent'] === $Line['indent'] and preg_match('/^'.$Block['pattern'].'[ ]+(.*)/', $Line['text'], $matches)) - { - if (isset($Block['interrupted'])) - { - $Block['li']['text'] []= ''; - - unset($Block['interrupted']); - } - - unset($Block['li']); - - $Block['li'] = array( - 'name' => 'li', - 'handler' => 'li', - 'text' => array( - $matches[1], - ), - ); - - $Block['element']['text'] []= & $Block['li']; - - return $Block; - } - - if ( ! isset($Block['interrupted'])) - { - $text = preg_replace('/^[ ]{0,4}/', '', $Line['body']); - - $Block['li']['text'] []= $text; - - return $Block; - } - - if ($Line['indent'] > 0) - { - $Block['li']['text'] []= ''; - - $text = preg_replace('/^[ ]{0,4}/', '', $Line['body']); - - $Block['li']['text'] []= $text; - - unset($Block['interrupted']); - - return $Block; - } - } - - # - # Quote - - protected function identifyQuote($Line) - { - if (preg_match('/^>[ ]?(.*)/', $Line['text'], $matches)) - { - $Block = array( - 'element' => array( - 'name' => 'blockquote', - 'handler' => 'lines', - 'text' => (array) $matches[1], - ), - ); - - return $Block; - } - } - - protected function addToQuote($Line, array $Block) - { - if ($Line['text'][0] === '>' and preg_match('/^>[ ]?(.*)/', $Line['text'], $matches)) - { - if (isset($Block['interrupted'])) - { - $Block['element']['text'] []= ''; - - unset($Block['interrupted']); - } - - $Block['element']['text'] []= $matches[1]; - - return $Block; - } - - if ( ! isset($Block['interrupted'])) - { - $Block['element']['text'] []= $Line['text']; - - return $Block; - } - } - - # - # Rule - - protected function identifyRule($Line) - { - if (preg_match('/^(['.$Line['text'][0].'])([ ]{0,2}\1){2,}[ ]*$/', $Line['text'])) - { - $Block = array( - 'element' => array( - 'name' => 'hr' - ), - ); - - return $Block; - } - } - - # - # Setext - - protected function identifySetext($Line, array $Block = null) - { - if ( ! isset($Block) or isset($Block['type']) or isset($Block['interrupted'])) - { - return; - } - - if (chop($Line['text'], $Line['text'][0]) === '') - { - $Block['element']['name'] = $Line['text'][0] === '=' ? 'h1' : 'h2'; - - return $Block; - } - } - - # - # Markup - - protected function identifyMarkup($Line) - { - if (preg_match('/^<(\w[\w\d]*)(?:[ ][^>]*)?(\/?)[ ]*>/', $Line['text'], $matches)) - { - if (in_array($matches[1], $this->textLevelElements)) - { - return; - } - - $Block = array( - 'element' => $Line['body'], - ); - - if ($matches[2] or $matches[1] === 'hr' or preg_match('/<\/'.$matches[1].'>[ ]*$/', $Line['text'])) - { - $Block['closed'] = true; - } - else - { - $Block['depth'] = 0; - $Block['name'] = $matches[1]; - } - - return $Block; - } - } - - protected function addToMarkup($Line, array $Block) - { - if (isset($Block['closed'])) - { - return; - } - - if (preg_match('/<'.$Block['name'].'([ ][^\/]+)?>/', $Line['text'])) # opening tag - { - $Block['depth'] ++; - } - - if (stripos($Line['text'], '') !== false) # closing tag - { - if ($Block['depth'] > 0) - { - $Block['depth'] --; - } - else - { - $Block['closed'] = true; - } - } - - $Block['element'] .= "\n".$Line['body']; - - return $Block; - } - - # - # Table - - protected function identifyTable($Line, array $Block = null) - { - if ( ! isset($Block) or isset($Block['type']) or isset($Block['interrupted'])) - { - return; - } - - if (strpos($Block['element']['text'], '|') !== false and chop($Line['text'], ' -:|') === '') - { - $alignments = array(); - - $divider = $Line['text']; - - $divider = trim($divider); - $divider = trim($divider, '|'); - - $dividerCells = explode('|', $divider); - - foreach ($dividerCells as $dividerCell) - { - $dividerCell = trim($dividerCell); - - if ($dividerCell === '') - { - continue; - } - - $alignment = null; - - if ($dividerCell[0] === ':') - { - $alignment = 'left'; - } - - if (substr($dividerCell, -1) === ':') - { - $alignment = $alignment === 'left' ? 'center' : 'right'; - } - - $alignments []= $alignment; - } - - # ~ - - $HeaderElements = array(); - - $header = $Block['element']['text']; - - $header = trim($header); - $header = trim($header, '|'); - - $headerCells = explode('|', $header); - - foreach ($headerCells as $index => $headerCell) - { - $headerCell = trim($headerCell); - - $HeaderElement = array( - 'name' => 'th', - 'text' => $headerCell, - 'handler' => 'line', - ); - - if (isset($alignments[$index])) - { - $alignment = $alignments[$index]; - - $HeaderElement['attributes'] = array( - 'align' => $alignment, - ); - } - - $HeaderElements []= $HeaderElement; - } - - # ~ - - $Block = array( - 'alignments' => $alignments, - 'identified' => true, - 'element' => array( - 'name' => 'table', - 'handler' => 'elements', - ), - ); - - $Block['element']['text'] []= array( - 'name' => 'thead', - 'handler' => 'elements', - ); - - $Block['element']['text'] []= array( - 'name' => 'tbody', - 'handler' => 'elements', - 'text' => array(), - ); - - $Block['element']['text'][0]['text'] []= array( - 'name' => 'tr', - 'handler' => 'elements', - 'text' => $HeaderElements, - ); - - return $Block; - } - } - - protected function addToTable($Line, array $Block) - { - if ($Line['text'][0] === '|' or strpos($Line['text'], '|')) - { - $Elements = array(); - - $row = $Line['text']; - - $row = trim($row); - $row = trim($row, '|'); - - $cells = explode('|', $row); - - foreach ($cells as $index => $cell) - { - $cell = trim($cell); - - $Element = array( - 'name' => 'td', - 'handler' => 'line', - 'text' => $cell, - ); - - if (isset($Block['alignments'][$index])) - { - $Element['attributes'] = array( - 'align' => $Block['alignments'][$index], - ); - } - - $Elements []= $Element; - } - - $Element = array( - 'name' => 'tr', - 'handler' => 'elements', - 'text' => $Elements, - ); - - $Block['element']['text'][1]['text'] []= $Element; - - return $Block; - } - } - - # - # Definitions - # - - protected function identifyReference($Line) - { - if (preg_match('/^\[(.+?)\]:[ ]*?(?:[ ]+["\'(](.+)["\')])?[ ]*$/', $Line['text'], $matches)) - { - $Definition = array( - 'id' => strtolower($matches[1]), - 'data' => array( - 'url' => $matches[2], - ), - ); - - if (isset($matches[3])) - { - $Definition['data']['title'] = $matches[3]; - } - - return $Definition; - } - } - - # - # ~ - # - - protected function buildParagraph($Line) - { - $Block = array( - 'element' => array( - 'name' => 'p', - 'text' => $Line['text'], - 'handler' => 'line', - ), - ); - - return $Block; - } - - # - # ~ - # - - protected function element(array $Element) - { - $markup = '<'.$Element['name']; - - if (isset($Element['attributes'])) - { - foreach ($Element['attributes'] as $name => $value) - { - $markup .= ' '.$name.'="'.$value.'"'; - } - } - - if (isset($Element['text'])) - { - $markup .= '>'; - - if (isset($Element['handler'])) - { - $markup .= $this->$Element['handler']($Element['text']); - } - else - { - $markup .= $Element['text']; - } - - $markup .= ''; - } - else - { - $markup .= ' />'; - } - - return $markup; - } - - protected function elements(array $Elements) - { - $markup = ''; - - foreach ($Elements as $Element) - { - if ($Element === null) - { - continue; - } - - $markup .= "\n"; - - if (is_string($Element)) # because of Markup - { - $markup .= $Element; - - continue; - } - - $markup .= $this->element($Element); - } - - $markup .= "\n"; - - return $markup; - } - - # - # Spans - # - - protected $SpanTypes = array( - '!' => array('Link'), # ? - '&' => array('Ampersand'), - '*' => array('Emphasis'), - '/' => array('Url'), - '<' => array('UrlTag', 'EmailTag', 'Tag', 'LessThan'), - '[' => array('Link'), - '_' => array('Emphasis'), - '`' => array('InlineCode'), - '~' => array('Strikethrough'), - '\\' => array('EscapeSequence'), - ); - - # ~ - - protected $spanMarkerList = '*_!&[spanMarkerList)) - { - $marker = $excerpt[0]; - - $markerPosition += strpos($remainder, $marker); - - $Excerpt = array('text' => $excerpt, 'context' => $text); - - foreach ($this->SpanTypes[$marker] as $spanType) - { - $handler = 'identify'.$spanType; - - $Span = $this->$handler($Excerpt); - - if ( ! isset($Span)) - { - continue; - } - - # The identified span can be ahead of the marker. - - if (isset($Span['position']) and $Span['position'] > $markerPosition) - { - continue; - } - - # Spans that start at the position of their marker don't have to set a position. - - if ( ! isset($Span['position'])) - { - $Span['position'] = $markerPosition; - } - - $plainText = substr($text, 0, $Span['position']); - - $markup .= $this->readPlainText($plainText); - - $markup .= isset($Span['markup']) ? $Span['markup'] : $this->element($Span['element']); - - $text = substr($text, $Span['position'] + $Span['extent']); - - $remainder = $text; - - $markerPosition = 0; - - continue 2; - } - - $remainder = substr($excerpt, 1); - - $markerPosition ++; - } - - $markup .= $this->readPlainText($text); - - return $markup; - } - - # - # ~ - # - - protected function identifyUrl($Excerpt) - { - if ( ! isset($Excerpt['text'][1]) or $Excerpt['text'][1] !== '/') - { - return; - } - - if (preg_match('/\bhttps?:[\/]{2}[^\s<]+\b\/*/ui', $Excerpt['context'], $matches, PREG_OFFSET_CAPTURE)) - { - $url = str_replace(array('&', '<'), array('&', '<'), $matches[0][0]); - - return array( - 'extent' => strlen($matches[0][0]), - 'position' => $matches[0][1], - 'element' => array( - 'name' => 'a', - 'text' => $url, - 'attributes' => array( - 'href' => $url, - ), - ), - ); - } - } - - protected function identifyAmpersand($Excerpt) - { - if ( ! preg_match('/^&#?\w+;/', $Excerpt['text'])) - { - return array( - 'markup' => '&', - 'extent' => 1, - ); - } - } - - protected function identifyStrikethrough($Excerpt) - { - if ( ! isset($Excerpt['text'][1])) - { - return; - } - - if ($Excerpt['text'][1] === '~' and preg_match('/^~~(?=\S)(.+?)(?<=\S)~~/', $Excerpt['text'], $matches)) - { - return array( - 'extent' => strlen($matches[0]), - 'element' => array( - 'name' => 'del', - 'text' => $matches[1], - 'handler' => 'line', - ), - ); - } - } - - protected function identifyEscapeSequence($Excerpt) - { - if (isset($Excerpt['text'][1]) and in_array($Excerpt['text'][1], $this->specialCharacters)) - { - return array( - 'markup' => $Excerpt['text'][1], - 'extent' => 2, - ); - } - } - - protected function identifyLessThan() - { - return array( - 'markup' => '<', - 'extent' => 1, - ); - } - - protected function identifyUrlTag($Excerpt) - { - if (strpos($Excerpt['text'], '>') !== false and preg_match('/^<(https?:[\/]{2}[^\s]+?)>/i', $Excerpt['text'], $matches)) - { - $url = str_replace(array('&', '<'), array('&', '<'), $matches[1]); - - return array( - 'extent' => strlen($matches[0]), - 'element' => array( - 'name' => 'a', - 'text' => $url, - 'attributes' => array( - 'href' => $url, - ), - ), - ); - } - } - - protected function identifyEmailTag($Excerpt) - { - if (strpos($Excerpt['text'], '>') !== false and preg_match('/^<(\S+?@\S+?)>/', $Excerpt['text'], $matches)) - { - return array( - 'extent' => strlen($matches[0]), - 'element' => array( - 'name' => 'a', - 'text' => $matches[1], - 'attributes' => array( - 'href' => 'mailto:'.$matches[1], - ), - ), - ); - } - } - - protected function identifyTag($Excerpt) - { - if (strpos($Excerpt['text'], '>') !== false and preg_match('/^<\/?\w.*?>/', $Excerpt['text'], $matches)) - { - return array( - 'markup' => $matches[0], - 'extent' => strlen($matches[0]), - ); - } - } - - protected function identifyInlineCode($Excerpt) - { - $marker = $Excerpt['text'][0]; - - if (preg_match('/^('.$marker.'+)[ ]*(.+?)[ ]*(? strlen($matches[0]), - 'element' => array( - 'name' => 'code', - 'text' => $text, - ), - ); - } - } - - protected function identifyLink($Excerpt) - { - $extent = $Excerpt['text'][0] === '!' ? 1 : 0; - - if (strpos($Excerpt['text'], ']') and preg_match('/\[((?:[^][]|(?R))*)\]/', $Excerpt['text'], $matches)) - { - $Link = array('text' => $matches[1], 'label' => strtolower($matches[1])); - - $extent += strlen($matches[0]); - - $substring = substr($Excerpt['text'], $extent); - - if (preg_match('/^\s*\[([^][]+)\]/', $substring, $matches)) - { - $Link['label'] = strtolower($matches[1]); - - if (isset($this->Definitions['Reference'][$Link['label']])) - { - $Link += $this->Definitions['Reference'][$Link['label']]; - - $extent += strlen($matches[0]); - } - else - { - return; - } - } - elseif (isset($this->Definitions['Reference'][$Link['label']])) - { - $Link += $this->Definitions['Reference'][$Link['label']]; - - if (preg_match('/^[ ]*\[\]/', $substring, $matches)) - { - $extent += strlen($matches[0]); - } - } - elseif (preg_match('/^\([ ]*(.*?)(?:[ ]+[\'"](.+?)[\'"])?[ ]*\)/', $substring, $matches)) - { - $Link['url'] = $matches[1]; - - if (isset($matches[2])) - { - $Link['title'] = $matches[2]; - } - - $extent += strlen($matches[0]); - } - else - { - return; - } - } - else - { - return; - } - - $url = str_replace(array('&', '<'), array('&', '<'), $Link['url']); - - if ($Excerpt['text'][0] === '!') - { - $Element = array( - 'name' => 'img', - 'attributes' => array( - 'alt' => $Link['text'], - 'src' => $url, - ), - ); - } - else - { - $Element = array( - 'name' => 'a', - 'handler' => 'line', - 'text' => $Link['text'], - 'attributes' => array( - 'href' => $url, - ), - ); - } - - if (isset($Link['title'])) - { - $Element['attributes']['title'] = $Link['title']; - } - - return array( - 'extent' => $extent, - 'element' => $Element, - ); - } - - protected function identifyEmphasis($Excerpt) - { - if ( ! isset($Excerpt['text'][1])) - { - return; - } - - $marker = $Excerpt['text'][0]; - - if ($Excerpt['text'][1] === $marker and preg_match($this->StrongRegex[$marker], $Excerpt['text'], $matches)) - { - $emphasis = 'strong'; - } - elseif (preg_match($this->EmRegex[$marker], $Excerpt['text'], $matches)) - { - $emphasis = 'em'; - } - else - { - return; - } - - return array( - 'extent' => strlen($matches[0]), - 'element' => array( - 'name' => $emphasis, - 'handler' => 'line', - 'text' => $matches[1], - ), - ); - } - - # - # ~ - - protected function readPlainText($text) - { - $breakMarker = $this->breaksEnabled ? "\n" : " \n"; - - $text = str_replace($breakMarker, "
\n", $text); - - return $text; - } - - # - # ~ - # - - protected function li($lines) - { - $markup = $this->lines($lines); - - $trimmedMarkup = trim($markup); - - if ( ! in_array('', $lines) and substr($trimmedMarkup, 0, 3) === '

') - { - $markup = $trimmedMarkup; - $markup = substr($markup, 3); - - $position = strpos($markup, "

"); - - $markup = substr_replace($markup, '', $position, 4); - } - - return $markup; - } - - # - # Multiton - # - - static function instance($name = 'default') - { - if (isset(self::$instances[$name])) - { - return self::$instances[$name]; - } - - $instance = new self(); - - self::$instances[$name] = $instance; - - return $instance; - } - - private static $instances = array(); - - # - # Deprecated Methods - # - - /** - * @deprecated in favor of "text" - */ - function parse($text) - { - $markup = $this->text($text); - - return $markup; - } - - # - # Fields - # - - protected $Definitions; - - # - # Read-only - - protected $specialCharacters = array( - '\\', '`', '*', '_', '{', '}', '[', ']', '(', ')', '>', '#', '+', '-', '.', '!', - ); - - protected $StrongRegex = array( - '*' => '/^[*]{2}((?:[^*]|[*][^*]*[*])+?)[*]{2}(?![*])/s', - '_' => '/^__((?:[^_]|_[^_]*_)+?)__(?!_)/us', - ); - - protected $EmRegex = array( - '*' => '/^[*]((?:[^*]|[*][*][^*]+?[*][*])+?)[*](?![*])/s', - '_' => '/^_((?:[^_]|__[^_]*__)+?)_(?!_)\b/us', - ); - - protected $textLevelElements = array( - 'a', 'br', 'bdo', 'abbr', 'blink', 'nextid', 'acronym', 'basefont', - 'b', 'em', 'big', 'cite', 'small', 'spacer', 'listing', - 'i', 'rp', 'del', 'code', 'strike', 'marquee', - 'q', 'rt', 'ins', 'font', 'strong', - 's', 'tt', 'sub', 'mark', - 'u', 'xm', 'sup', 'nobr', - 'var', 'ruby', - 'wbr', 'span', - 'time', - ); -} diff --git a/github/vendor/WPUpdatePhp.php b/github/vendor/WPUpdatePhp.php deleted file mode 100644 index cd4f861..0000000 --- a/github/vendor/WPUpdatePhp.php +++ /dev/null @@ -1,115 +0,0 @@ -minimum_version = $minimum_version; - $this->recommended_version = $recommended_version; - $this->plugin_name = __( 'this plugin', 'github-updater' ); - } - - /** - * @param $name string Name of the plugin to be used in admin notices - */ - public function set_plugin_name( $name ) { - $this->plugin_name = $name; - } - - /** - * @param $version - * - * @return bool - */ - public function does_it_meet_required_php_version( $version = PHP_VERSION ) { - if ( $this->version_passes_requirement( $this->minimum_version, $version ) ) { - return true; - } - - $this->load_version_notice( array( $this, 'minimum_admin_notice' ) ); - return false; - } - - /** - * @param $version - * - * @return bool - */ - public function does_it_meet_recommended_php_version( $version = PHP_VERSION ) { - if ( $this->version_passes_requirement( $this->recommended_version, $version ) ) { - return true; - } - - $this->load_version_notice( array( $this, 'recommended_admin_notice' ) ); - return false; - } - - /** - * @param $requirement - * @param $version - * - * @return bool - */ - private function version_passes_requirement( $requirement, $version ) { - return version_compare( $requirement, $version, '<=' ); - } - - /** - * @param $callback - * - * @return void - */ - private function load_version_notice( $callback ) { - if ( is_admin() && ! defined( 'DOING_AJAX' ) ) { - add_action( 'admin_notices', $callback ); - add_action( 'network_admin_notices', $callback ); - } - } - - /** - * Method hooked into admin_notices when minimum PHP version is not available to show this in a notice - * @hook admin_notices - */ - public function minimum_admin_notice() { - ?> -
-

- plugin_name, $this->minimum_version ); ?> -
- ', '' ); ?> -

-
- -
-

- plugin_name ), $this->recommended_version ); ?> -
- ', '' ); ?> -

-
- parse_readme_contents( $file_contents ); - } - - function parse_readme_contents( $file_contents ) { - $file_contents = str_replace(array("\r\n", "\r"), "\n", $file_contents); - $file_contents = trim($file_contents); - if ( 0 === strpos( $file_contents, "\xEF\xBB\xBF" ) ) - $file_contents = substr( $file_contents, 3 ); - - // === Plugin Name === - // Must be the very first thing. - if ( !preg_match('|^===(.*)===|', $file_contents, $_name) ) - return array(); // require a name - $name = trim($_name[1], '='); - $name = $this->sanitize_text( $name ); - - $file_contents = $this->chop_string( $file_contents, $_name[0] ); - - - // Requires at least: 1.5 - if ( preg_match('|Requires at least:(.*)|i', $file_contents, $_requires_at_least) ) - $requires_at_least = $this->sanitize_text($_requires_at_least[1]); - else - $requires_at_least = NULL; - - - // Tested up to: 2.1 - if ( preg_match('|Tested up to:(.*)|i', $file_contents, $_tested_up_to) ) - $tested_up_to = $this->sanitize_text( $_tested_up_to[1] ); - else - $tested_up_to = NULL; - - - // Stable tag: 10.4-ride-the-fire-eagle-danger-day - if ( preg_match('|Stable tag:(.*)|i', $file_contents, $_stable_tag) ) - $stable_tag = $this->sanitize_text( $_stable_tag[1] ); - else - $stable_tag = NULL; // we assume trunk, but don't set it here to tell the difference between specified trunk and default trunk - - - // Tags: some tag, another tag, we like tags - if ( preg_match('|Tags:(.*)|i', $file_contents, $_tags) ) { - $tags = preg_split('|,[\s]*?|', trim($_tags[1])); - foreach ( array_keys($tags) as $t ) - $tags[$t] = $this->sanitize_text( $tags[$t] ); - } else { - $tags = array(); - } - - - // Contributors: markjaquith, mdawaffe, zefrank - $contributors = array(); - if ( preg_match('|Contributors:(.*)|i', $file_contents, $_contributors) ) { - $temp_contributors = preg_split('|,[\s]*|', trim($_contributors[1])); - foreach ( array_keys($temp_contributors) as $c ) { - $tmp_sanitized = $this->user_sanitize( $temp_contributors[$c] ); - if ( strlen(trim($tmp_sanitized)) > 0 ) - $contributors[$c] = $tmp_sanitized; - unset($tmp_sanitized); - } - } - - // Donate Link: URL - if ( preg_match('|Donate link:(.*)|i', $file_contents, $_donate_link) ) - $donate_link = esc_url( $_donate_link[1] ); - else - $donate_link = NULL; - - // License: GPLv2 (Lots of plugins have this, so lets pull it out so it doesn't get into our short description) - if ( preg_match('|License:(.*)|i', $file_contents, $_license) ) - $license = $this->sanitize_text( $_license[1] ); - else - $license = NULL; - - // License URI: URL - if ( preg_match( '|License URI:(.*)|i', $file_contents, $_license_uri ) ) - $license_uri = esc_url( $_license_uri[1] ); - else - $license_uri = null; - - // togs, conts, etc are optional and order shouldn't matter. So we chop them only after we've grabbed their values. - foreach ( array('tags', 'contributors', 'requires_at_least', 'tested_up_to', 'stable_tag', 'donate_link', 'license', 'license_uri') as $chop ) { - if ( $$chop ) { - $_chop = '_' . $chop; - $file_contents = $this->chop_string( $file_contents, ${$_chop}[0] ); - } - } - - $file_contents = trim($file_contents); - - - // short-description fu - if ( !preg_match('/(^(.*?))^[\s]*=+?[\s]*.+?[\s]*=+?/ms', $file_contents, $_short_description) ) - $_short_description = array( 1 => &$file_contents, 2 => &$file_contents ); - $short_desc_filtered = $this->sanitize_text( $_short_description[2] ); - $short_desc_length = strlen($short_desc_filtered); - $short_description = substr($short_desc_filtered, 0, 150); - if ( $short_desc_length > strlen($short_description) ) - $truncated = true; - else - $truncated = false; - if ( $_short_description[1] ) - $file_contents = $this->chop_string( $file_contents, $_short_description[1] ); // yes, the [1] is intentional - - // == Section == - // Break into sections - // $_sections[0] will be the title of the first section, $_sections[1] will be the content of the first section - // the array alternates from there: title2, content2, title3, content3... and so forth - $_sections = preg_split('/^[\s]*==[\s]*(.+?)[\s]*==/m', $file_contents, -1, PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY); - - $sections = array(); - for ( $i=1; $i <= count($_sections); $i +=2 ) { - $_sections[$i] = preg_replace('/^[\s]*=[\s]+(.+?)[\s]+=/m', '

$1

', $_sections[$i]); - $_sections[$i] = $this->filter_text( $_sections[$i], true ); - $title = $this->sanitize_text( $_sections[$i-1] ); - $sections[str_replace(' ', '_', strtolower($title))] = array('title' => $title, 'content' => $_sections[$i]); - } - - - // Special sections - // This is where we nab our special sections, so we can enforce their order and treat them differently, if needed - // upgrade_notice is not a section, but parse it like it is for now - $final_sections = array(); - foreach ( array('description', 'installation', 'frequently_asked_questions', 'screenshots', 'changelog', 'change_log', 'upgrade_notice') as $special_section ) { - if ( isset($sections[$special_section]) ) { - $final_sections[$special_section] = $sections[$special_section]['content']; - unset($sections[$special_section]); - } - } - if ( isset($final_sections['change_log']) && empty($final_sections['changelog']) ) - $final_sections['changelog'] = $final_sections['change_log']; - - - $final_screenshots = array(); - if ( isset($final_sections['screenshots']) ) { - preg_match_all('|
  • (.*?)
  • |s', $final_sections['screenshots'], $screenshots, PREG_SET_ORDER); - if ( $screenshots ) { - foreach ( (array) $screenshots as $ss ) - $final_screenshots[] = $ss[1]; - } - } - - // Parse the upgrade_notice section specially: - // 1.0 => blah, 1.1 => fnord - $upgrade_notice = array(); - if ( isset($final_sections['upgrade_notice']) ) { - $split = preg_split( '#

    (.*?)

    #', $final_sections['upgrade_notice'], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY ); - for ( $i = 0; $i < count( $split ); $i += 2 ) - $upgrade_notice[$this->sanitize_text( $split[$i] )] = substr( $this->sanitize_text( $split[$i + 1] ), 0, 300 ); - unset( $final_sections['upgrade_notice'] ); - } - - // No description? - // No problem... we'll just fall back to the old style of description - // We'll even let you use markup this time! - $excerpt = false; - if ( !isset($final_sections['description']) ) { - $final_sections = array_merge(array('description' => $this->filter_text( $_short_description[2], true )), $final_sections); - $excerpt = true; - } - - - // dump the non-special sections into $remaining_content - // their order will be determined by their original order in the readme.txt - $remaining_content = ''; - foreach ( $sections as $s_name => $s_data ) { - $title_id = esc_attr($s_data['title']); - $title_id = str_replace(' ','-',$title_id); - $remaining_content .= "\n

    {$s_data['title']}

    \n{$s_data['content']}"; - } - $remaining_content = trim($remaining_content); - - - // All done! - // $r['tags'] and $r['contributors'] are simple arrays - // $r['sections'] is an array with named elements - $r = array( - 'name' => $name, - 'tags' => $tags, - 'requires_at_least' => $requires_at_least, - 'tested_up_to' => $tested_up_to, - 'stable_tag' => $stable_tag, - 'contributors' => $contributors, - 'donate_link' => $donate_link, - 'license' => $license, - 'license_uri' => $license_uri, - 'short_description' => $short_description, - 'screenshots' => $final_screenshots, - 'is_excerpt' => $excerpt, - 'is_truncated' => $truncated, - 'sections' => $final_sections, - 'remaining_content' => $remaining_content, - 'upgrade_notice' => $upgrade_notice - ); - - return $r; - } - - function chop_string( $string, $chop ) { // chop a "prefix" from a string: Agressive! uses strstr not 0 === strpos - if ( $_string = strstr($string, $chop) ) { - $_string = substr($_string, strlen($chop)); - return trim($_string); - } else { - return trim($string); - } - } - - function user_sanitize( $text, $strict = false ) { // whitelisted chars - if ( function_exists('user_sanitize') ) // bbPress native - return user_sanitize( $text, $strict ); - - if ( $strict ) { - $text = preg_replace('/[^a-z0-9-]/i', '', $text); - $text = preg_replace('|-+|', '-', $text); - } else { - $text = preg_replace('/[^a-z0-9_-]/i', '', $text); - } - return $text; - } - - function sanitize_text( $text ) { // not fancy - $text = strip_tags($text); - $text = esc_html($text); - $text = trim($text); - return $text; - } - - function filter_text( $text, $markdown = false ) { // fancy, Markdown - $text = trim($text); - - $text = call_user_func( array( __CLASS__, 'code_trick' ), $text, $markdown ); // A better parser than Markdown's for: backticks -> CODE - - if ( $markdown ) { // Parse markdown. - if ( !function_exists('Markdown') ) - require( AUTOMATTIC_README_MARKDOWN ); - $text = Markdown($text); - } - - $allowed = array( - 'a' => array( - 'href' => array(), - 'title' => array(), - 'rel' => array()), - 'blockquote' => array('cite' => array()), - 'br' => array(), - 'cite' => array(), - 'p' => array(), - 'code' => array(), - 'pre' => array(), - 'em' => array(), - 'strong' => array(), - 'ul' => array(), - 'ol' => array(), - 'li' => array(), - 'h3' => array(), - 'h4' => array() - ); - - $text = balanceTags($text); - - $text = wp_kses( $text, $allowed ); - $text = trim($text); - return $text; - } - - function code_trick( $text, $markdown ) { // Don't use bbPress native function - it's incompatible with Markdown - // If doing markdown, first take any user formatted code blocks and turn them into backticks so that - // markdown will preserve things like underscores in code blocks - if ( $markdown ) - $text = preg_replace_callback("!(
    |)(.*?)(
    |)!s", array( __CLASS__,'decodeit'), $text); - - $text = str_replace(array("\r\n", "\r"), "\n", $text); - if ( !$markdown ) { - // This gets the "inline" code blocks, but can't be used with Markdown. - $text = preg_replace_callback("|(`)(.*?)`|", array( __CLASS__, 'encodeit'), $text); - // This gets the "block level" code blocks and converts them to PRE CODE - $text = preg_replace_callback("!(^|\n)`(.*?)`!s", array( __CLASS__, 'encodeit'), $text); - } else { -// // Markdown can do inline code, we convert bbPress style block level code to Markdown style -// $text = preg_replace_callback("!(^|\n)([ \t]*?)`(.*?)`!s", array( __CLASS__, 'indent'), $text); - - // Markdown seems to be choking on block level stuff too. Let's just encode it and be done with it. - $text = preg_replace_callback("!(^|\n)`(.*?)`!s", array( __CLASS__, 'encodeit'), $text); - } - return $text; - } - - function indent( $matches ) { - $text = $matches[3]; - $text = preg_replace('|^|m', $matches[2] . ' ', $text); - return $matches[1] . $text; - } - - function encodeit( $matches ) { - if ( function_exists('encodeit') ) // bbPress native - return encodeit( $matches ); - - $text = trim($matches[2]); - $text = htmlspecialchars($text, ENT_QUOTES); - $text = str_replace(array("\r\n", "\r"), "\n", $text); - $text = preg_replace("|\n\n\n+|", "\n\n", $text); - $text = str_replace('&lt;', '<', $text); - $text = str_replace('&gt;', '>', $text); - $text = "$text"; - if ( "`" != $matches[1] ) - $text = "
    $text
    "; - return $text; - } - - function decodeit( $matches ) { - if ( function_exists('decodeit') ) // bbPress native - return decodeit( $matches ); - - $text = $matches[2]; - $trans_table = array_flip(get_html_translation_table(HTML_ENTITIES)); - $text = strtr($text, $trans_table); - $text = str_replace('
    ', '', $text); - $text = str_replace('&', '&', $text); - $text = str_replace(''', "'", $text); - if ( '
    ' == $matches[1] )
    -			$text = "\n$text\n";
    -		return "`$text`";
    -	}
    -
    -} // end class
    diff --git a/style.css b/style.css
    index b42e7d6..6412252 100644
    --- a/style.css
    +++ b/style.css
    @@ -3,7 +3,7 @@ Theme Name: PASW 2015
     Description: Pasw2015 è il tema trasparente e accessibile promosso dalla Comunità di Pratica "Porte Aperte sul Web". Bello, accessibile e innovativo, con supporto continuo e volontario offerto dalla comunità.
     Author: Porte Aperte sul Web
     Author URI: http://www.porteapertesulweb.it
    -Version: 2.1
    +Version: 2.2
     Tags: pasw, scuole, pubblica amministrazione, accessibile, trasparente, personalizzabile
     GitHub Theme URI: https://github.com/PorteAperteSulWeb/pasw2015
     GitHub Branch: master