├── Procfile ├── startup.sh ├── public ├── favicon.ico ├── wp-content │ └── plugins │ │ ├── versionpress │ │ ├── temp │ │ │ ├── security-check.txt │ │ │ └── .gitignore │ │ ├── vpconfig.neon │ │ ├── log │ │ │ └── .gitignore │ │ ├── admin │ │ │ ├── README.md │ │ │ ├── public │ │ │ │ ├── icons │ │ │ │ │ ├── fonts │ │ │ │ │ │ ├── icomoon.eot │ │ │ │ │ │ ├── icomoon.ttf │ │ │ │ │ │ ├── icomoon.woff │ │ │ │ │ │ └── icomoon.svg │ │ │ │ │ ├── Read Me.txt │ │ │ │ │ └── style.css │ │ │ │ ├── gui │ │ │ │ │ ├── 8a457a7b9d43377c070b0fe91732ed95.ttf │ │ │ │ │ └── cea23664cbf4f6c9484411cbc651d983.eot │ │ │ │ ├── web.config │ │ │ │ └── css │ │ │ │ │ └── popover-custom.css │ │ │ ├── inc │ │ │ │ └── javascriptGui.php │ │ │ ├── index.php │ │ │ ├── system-info.php │ │ │ ├── undo.php │ │ │ └── deactivate.php │ │ ├── src │ │ │ ├── Initialization │ │ │ │ ├── InitializationAbortedException.php │ │ │ │ ├── InitializationConfig.php │ │ │ │ ├── VersionPressOptions.php │ │ │ │ ├── .htaccess.tpl │ │ │ │ ├── .gitignore.tpl │ │ │ │ ├── InitializerStates.php │ │ │ │ ├── web.tpl.config │ │ │ │ └── ReplacerMethods.src.php │ │ │ ├── Git │ │ │ │ ├── GitConfig.php │ │ │ │ ├── ChangeInfoPreprocessors │ │ │ │ │ ├── ChangeInfoPreprocessor.php │ │ │ │ │ ├── PostChangeInfoPreprocessor.php │ │ │ │ │ └── PostTermSplittingPreprocessor.php │ │ │ │ ├── RevertStatus.php │ │ │ │ ├── CommitMessage.php │ │ │ │ ├── GitLogPaginator.php │ │ │ │ └── Commit.php │ │ │ ├── Synchronizers │ │ │ │ ├── Synchronizer.php │ │ │ │ ├── CommentsSynchronizer.php │ │ │ │ ├── PostMetaSynchronizer.php │ │ │ │ ├── UserMetaSynchronizer.php │ │ │ │ ├── TermTaxonomySynchronizer.php │ │ │ │ ├── TermsSynchronizer.php │ │ │ │ ├── UsersSynchronizer.php │ │ │ │ ├── PostsSynchronizer.php │ │ │ │ ├── SynchronizerFactory.php │ │ │ │ └── OptionsSynchronizer.php │ │ │ ├── Utils │ │ │ │ ├── CompatibilityResult.php │ │ │ │ ├── Markdown.php │ │ │ │ ├── JsRedirect.php │ │ │ │ ├── SecurityUtils.php │ │ │ │ ├── EntityUtils.php │ │ │ │ ├── UninstallationUtil.php │ │ │ │ ├── IdUtil.php │ │ │ │ ├── CompatibilityChecker.php │ │ │ │ ├── ProcessUtils.php │ │ │ │ ├── Zip.php │ │ │ │ ├── ReferenceUtils.php │ │ │ │ ├── BugReporter.php │ │ │ │ └── StringUtils.php │ │ │ ├── Api │ │ │ │ └── BundledWpApi │ │ │ │ │ ├── lib │ │ │ │ │ └── infrastructure │ │ │ │ │ │ ├── class-jsonserializable.php │ │ │ │ │ │ ├── class-wp-http-responseinterface.php │ │ │ │ │ │ └── class-wp-http-response.php │ │ │ │ │ └── README.md │ │ │ ├── ChangeInfos │ │ │ │ ├── ChangeInfo.php │ │ │ │ ├── BulkUserChangeInfo.php │ │ │ │ ├── BulkPluginChangeInfo.php │ │ │ │ ├── BulkThemeChangeInfo.php │ │ │ │ ├── BulkTranslationChangeInfo.php │ │ │ │ ├── BulkOptionChangeInfo.php │ │ │ │ ├── BulkPostMetaChangeInfo.php │ │ │ │ ├── BulkUserMetaChangeInfo.php │ │ │ │ ├── UntrackedChangeInfo.php │ │ │ │ ├── BulkCommentChangeInfo.php │ │ │ │ ├── BulkTermChangeInfo.php │ │ │ │ ├── BulkPostChangeInfo.php │ │ │ │ ├── TrackedChangeInfo.php │ │ │ │ ├── OptionChangeInfo.php │ │ │ │ ├── EntityChangeInfo.php │ │ │ │ ├── UserChangeInfo.php │ │ │ │ ├── UserMetaChangeInfo.php │ │ │ │ ├── RevertChangeInfo.php │ │ │ │ ├── BulkChangeInfo.php │ │ │ │ ├── ThemeChangeInfo.php │ │ │ │ ├── CommentChangeInfo.php │ │ │ │ ├── VersionPressChangeInfo.php │ │ │ │ ├── ChangeInfoMatcher.php │ │ │ │ ├── PluginChangeInfo.php │ │ │ │ ├── TermChangeInfo.php │ │ │ │ └── PostMetaChangeInfo.php │ │ │ ├── Storages │ │ │ │ ├── UserStorage.php │ │ │ │ ├── Storage.php │ │ │ │ ├── TermsStorage.php │ │ │ │ ├── PostMetaStorage.php │ │ │ │ ├── Mirror.php │ │ │ │ └── CommentStorage.php │ │ │ ├── VersionPress.php │ │ │ ├── DI │ │ │ │ └── VersionPressServices.php │ │ │ ├── Configuration │ │ │ │ └── VersionPressConfig.php │ │ │ ├── Database │ │ │ │ ├── ExtendedWpdb.php │ │ │ │ ├── wordpress-schema.neon │ │ │ │ └── DbSchemaInfo.php │ │ │ └── Cli │ │ │ │ └── VPCommandUtils.php │ │ ├── vpconfig.defaults.neon │ │ ├── versionpress-nginx.conf │ │ ├── web.config │ │ ├── bootstrap.php │ │ └── uninstall.php │ │ ├── dlm-mailchimp-lock │ │ ├── CHANGELOG.md │ │ ├── .gitignore │ │ ├── README.md │ │ ├── composer.json │ │ ├── php-backwards-compatibility.php │ │ ├── plugin.php │ │ ├── src │ │ │ └── DependencyCheck.php │ │ └── dlm-mailchimp-lock.php │ │ ├── wordpress-23-related-posts-plugin │ │ ├── static │ │ │ ├── img │ │ │ │ ├── up.jpg │ │ │ │ ├── up.png │ │ │ │ ├── down.jpg │ │ │ │ ├── down.png │ │ │ │ ├── check.png │ │ │ │ ├── close.png │ │ │ │ ├── cross.png │ │ │ │ ├── outlink.png │ │ │ │ ├── cross_2x.png │ │ │ │ ├── menu_icon.png │ │ │ │ ├── arrow_down.png │ │ │ │ ├── arrow_right.png │ │ │ │ ├── desktop_icon.png │ │ │ │ ├── icon_support.png │ │ │ │ ├── measure_icon.png │ │ │ │ ├── menu_icon_2x.png │ │ │ │ ├── mobile_icon.png │ │ │ │ ├── network_icon.png │ │ │ │ ├── themes │ │ │ │ │ ├── momma.jpg │ │ │ │ │ ├── plain.jpg │ │ │ │ │ ├── m-plain.jpg │ │ │ │ │ ├── modern.jpg │ │ │ │ │ ├── m-modern.jpg │ │ │ │ │ ├── m-stream.jpg │ │ │ │ │ ├── pinterest.jpg │ │ │ │ │ ├── twocolumns.jpg │ │ │ │ │ ├── vertical-m.jpg │ │ │ │ │ ├── vertical-s.jpg │ │ │ │ │ └── vertical.jpg │ │ │ │ ├── turnonscreen.jpg │ │ │ │ ├── promoted_arrow.png │ │ │ │ └── measure_icon_2x.png │ │ │ ├── thumbs │ │ │ │ ├── 0.jpg │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.jpg │ │ │ │ ├── 9.jpg │ │ │ │ ├── 10.jpg │ │ │ │ ├── 11.jpg │ │ │ │ ├── 12.jpg │ │ │ │ ├── 13.jpg │ │ │ │ ├── 14.jpg │ │ │ │ ├── 15.jpg │ │ │ │ ├── 16.jpg │ │ │ │ ├── 17.jpg │ │ │ │ ├── 18.jpg │ │ │ │ ├── 19.jpg │ │ │ │ ├── 20.jpg │ │ │ │ ├── 21.jpg │ │ │ │ ├── 22.jpg │ │ │ │ ├── 23.jpg │ │ │ │ ├── 24.jpg │ │ │ │ ├── 25.jpg │ │ │ │ ├── 26.jpg │ │ │ │ ├── 27.jpg │ │ │ │ ├── 28.jpg │ │ │ │ ├── 29.jpg │ │ │ │ └── 30.jpg │ │ │ ├── themes │ │ │ │ ├── m-plain.css │ │ │ │ ├── plain.css │ │ │ │ ├── recommendations.css │ │ │ │ ├── modern.css │ │ │ │ ├── vertical-s.css │ │ │ │ ├── vertical.css │ │ │ │ ├── twocolumns.css │ │ │ │ ├── vertical-m.css │ │ │ │ ├── m-modern.css │ │ │ │ └── m-stream.css │ │ │ ├── js │ │ │ │ ├── extras.js │ │ │ │ ├── infiniterecs.js │ │ │ │ ├── dashboard.js │ │ │ │ └── themes.js │ │ │ └── css │ │ │ │ └── connect.css │ │ ├── zemanta │ │ │ ├── views │ │ │ │ ├── message.php │ │ │ │ ├── options-input-text.php │ │ │ │ ├── options-input-checkbox.php │ │ │ │ ├── options-input-apikey.php │ │ │ │ ├── debug.php │ │ │ │ ├── assets.php │ │ │ │ ├── options.php │ │ │ │ └── scripts.php │ │ │ └── img │ │ │ │ ├── logo.png │ │ │ │ └── menu_icon.png │ │ ├── uninstall.php │ │ ├── wpml-config.xml │ │ ├── views │ │ │ ├── global_notice.php │ │ │ ├── admin_head.php │ │ │ └── connect_notice.php │ │ ├── widget.php │ │ ├── admin_notices.php │ │ ├── edit_related_posts.php │ │ └── wp_related_posts.php │ │ ├── search-and-replace │ │ └── languages │ │ │ └── searchandreplace-de_DE.mo │ │ ├── dlm-amazon-s3 │ │ ├── assets │ │ │ └── js │ │ │ │ └── amazon.js │ │ └── readme.txt │ │ └── batcache.php ├── BingSiteAuth.xml ├── apple-touch-icon-60x60.png ├── apple-touch-icon-76x76.png ├── apple-touch-icon-120x120.png ├── apple-touch-icon-152x152.png └── robots.txt ├── docker-compose.yml ├── Dockerfile ├── nginx.conf ├── nginx-site.conf └── composer.json /Procfile: -------------------------------------------------------------------------------- 1 | web: sh support/app_boot.sh 2 | -------------------------------------------------------------------------------- /startup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | hhvm --mode daemon -vServer.Type=fastcgi -vServer.Port=9000 & 3 | nginx -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/temp/security-check.txt: -------------------------------------------------------------------------------- 1 | If you see this, your webserver is not secured. -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-mailchimp-lock/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ### 1.0.0 - January 29, 2015 2 | * Initial release 3 | 4 | -------------------------------------------------------------------------------- /public/BingSiteAuth.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | D4A43F56EC61E9E2E5505FD263DE5519 4 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/temp/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | !.htaccess 4 | !web.config 5 | !security-check.txt -------------------------------------------------------------------------------- /public/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /public/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /public/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /public/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/vpconfig.neon: -------------------------------------------------------------------------------- 1 | # Copy and update values from vpconfig.defaults.neon or run `wp vp config ` 2 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/log/.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore everything 2 | * 3 | 4 | # But not these... 5 | !.gitignore 6 | !.htaccess 7 | !web.config -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/README.md: -------------------------------------------------------------------------------- 1 | # VersionPress admin pages 2 | 3 | Make sure to update `vp_admin_menu()` action to make the pages accessible. -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.eot -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.ttf -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.woff -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Initialization/InitializationAbortedException.php: -------------------------------------------------------------------------------- 1 | "> 4 | 5 |

6 | 7 |

8 | 9 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/img/down.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/img/down.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/img/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/img/down.png -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/0.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/1.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/2.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/3.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/4.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/5.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/6.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/7.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/8.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/wordpress-23-related-posts-plugin/static/thumbs/9.jpg -------------------------------------------------------------------------------- /public/wp-content/plugins/search-and-replace/languages/searchandreplace-de_DE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/talolard/wordpress-docker-compose/HEAD/public/wp-content/plugins/search-and-replace/languages/searchandreplace-de_DE.mo -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Initialization/InitializationConfig.php: -------------------------------------------------------------------------------- 1 | 3 | Order Deny,Allow 4 | Deny from all 5 | 6 | 7 | # Apache 2.4 8 | 9 | Require all denied 10 | 11 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/Synchronizer.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | web: 2 | image: talolard/easy-wordpress 3 | ports: 4 | - "80:80" 5 | links: 6 | - mysql 7 | - memcache 8 | mysql: 9 | image: orchardup/mysql 10 | ports: 11 | - "3306:3306" 12 | memcache: 13 | image: memcached 14 | environment: 15 | MYSQL_DATABASE: wordpress -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/js/extras.js: -------------------------------------------------------------------------------- 1 | (function(a){a(function(){var b=a("#wp_rp_custom_thumb_sizes_settings");a("#wp_rp_custom_size_thumbnail_enabled:checked").length?b.show():b.hide();a("#wp_rp_custom_size_thumbnail_enabled").click(function(){b.toggle(this.checked)})})})(jQuery); 2 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/ChangeInfoPreprocessors/ChangeInfoPreprocessor.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/CompatibilityResult.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |

4 |

5 | 6 | -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-mailchimp-lock/.gitignore: -------------------------------------------------------------------------------- 1 | .htaccess 2 | wp-content/uploads/ 3 | wp-content/blogs.dir/ 4 | wp-content/upgrade/ 5 | wp-content/backup-db/ 6 | wp-content/advanced-cache.php 7 | wp-content/wp-cache-config.php 8 | sitemap.xml 9 | *.log 10 | wp-content/cache/ 11 | wp-content/backups/ 12 | sitemap.xml.gz 13 | wp-config.php 14 | node_modules 15 | .sass-cache 16 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/vpconfig.defaults.neon: -------------------------------------------------------------------------------- 1 | # 2 | # !!! DO NOT EDIT THIS FILE !!! 3 | # 4 | # Use the `vpconfig.neon` file instead; copy & adjust the values there. 5 | # See http://docs.versionpress.net/en/getting-started/configuration 6 | # 7 | 8 | # Git binary. Expects Git in PATH by default, can be updated to use custom location 9 | git-binary: git 10 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/UserStorage.php: -------------------------------------------------------------------------------- 1 | count === 1) { 9 | return $this->changeInfos[0]->getChangeDescription(); 10 | } 11 | 12 | return parent::getChangeDescription(); 13 | } 14 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/Markdown.php: -------------------------------------------------------------------------------- 1 | getAction())) . " $this->count plugins"; 12 | } 13 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkThemeChangeInfo.php: -------------------------------------------------------------------------------- 1 | getAction())) . " $this->count themes"; 12 | } 13 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/JsRedirect.php: -------------------------------------------------------------------------------- 1 | 10 | window.setTimeout(function () { 11 | window.location = '$url'; 12 | }, $timeout); 13 | 14 | JS; 15 | echo $redirectionJs; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/Read Me.txt: -------------------------------------------------------------------------------- 1 | Open *demo.html* to see a list of all the glyphs in your font along with their codes/ligatures. 2 | 3 | You won't need any of the files located under the *demo-files* directory when including the generated font in your own projects. 4 | 5 | You can import *selection.json* back to the IcoMoon app using the *Import Icons* button (or via Main Menu > Manage Projects) to retrieve your icon selection. 6 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/SecurityUtils.php: -------------------------------------------------------------------------------- 1 | getAction())) . " $this->count translations"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/views/admin_head.php: -------------------------------------------------------------------------------- 1 | 12 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/RevertStatus.php: -------------------------------------------------------------------------------- 1 | $value) { 10 | if (!isset($oldEntityData[$key]) || $oldEntityData[$key] != $value) { 11 | $diff[$key] = $value; 12 | } 13 | } 14 | 15 | return $diff; 16 | 17 | } 18 | 19 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/CommentsSynchronizer.php: -------------------------------------------------------------------------------- 1 | " name="zemanta_options[]" size="40" type="text" value="" disabled="disabled" /> 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkOptionChangeInfo.php: -------------------------------------------------------------------------------- 1 | count === 1) { 12 | return $this->changeInfos[0]->getChangeDescription(); 13 | } 14 | 15 | return Strings::capitalize(StringUtils::verbToPastTense($this->getAction())) . " $this->count options"; 16 | } 17 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/UserMetaSynchronizer.php: -------------------------------------------------------------------------------- 1 | count === 1) { 12 | return $this->changeInfos[0]->getChangeDescription(); 13 | } 14 | 15 | return Strings::firstUpper(StringUtils::verbToPastTense($this->getAction())) . " $this->count post-meta"; 16 | } 17 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkUserMetaChangeInfo.php: -------------------------------------------------------------------------------- 1 | count === 1) { 12 | return $this->changeInfos[0]->getChangeDescription(); 13 | } 14 | 15 | return Strings::firstUpper(StringUtils::verbToPastTense($this->getAction())) . " $this->count user-meta"; 16 | } 17 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/inc/javascriptGui.php: -------------------------------------------------------------------------------- 1 | get_site_url(), 4 | 'urlPrefix' => vp_rest_get_url_prefix(), 5 | 'queryParam' => 'vp_rest_route', 6 | 'permalinkStructure' => get_option('permalink_structure'), 7 | 'nonce' => wp_create_nonce('wp_rest') 8 | ); 9 | ?> 10 | 13 | 14 | " name="zemanta_options[]" type="checkbox" value="1" disabled="disabled" /> 3 | 4 | 5 | 6 | 9 | 10 | 11 | 12 | 13 | 14 |

15 | 16 |

17 | 18 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM marmelab/composer-hhvm 2 | RUN apt-get update 3 | RUN apt-get install -y nginx vim 4 | # nginx config 5 | RUN sed -i -e"s/keepalive_timeout\s*65/keepalive_timeout 2/" /etc/nginx/nginx.conf 6 | RUN sed -i -e"s/keepalive_timeout 2/keepalive_timeout 2;\n\tclient_max_body_size 100m/" /etc/nginx/nginx.conf 7 | ADD . /app 8 | EXPOSE 80 9 | RUN cd /app; hhvm /usr/local/bin/composer install 10 | 11 | ADD ./nginx-site.conf /etc/nginx/sites-available/default 12 | EXPOSE 80 13 | WORKDIR /app 14 | 15 | ADD ./nginx.conf /etc/nginx/nginx.conf 16 | ADD ./startup.sh /app/startup.sh 17 | ADD ./public/wp-config.php /app/public.built/wp-config.php 18 | CMD ["/bin/bash","/app/startup.sh"] 19 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | # Google Image 2 | User-agent: Googlebot-Image 3 | Disallow: 4 | Allow: /* 5 | 6 | # Google AdSense 7 | User-agent: Mediapartners-Google 8 | Disallow: 9 | 10 | # digg mirror 11 | User-agent: duggmirror 12 | Disallow: / 13 | 14 | # global 15 | User-agent: * 16 | Disallow: /cgi-bin/ 17 | Disallow: /wp-admin/ 18 | Disallow: /wp-includes/ 19 | Disallow: /wp-content/plugins/ 20 | Disallow: /wp-content/cache/ 21 | Disallow: /wp-content/themes/ 22 | Disallow: /trackback/ 23 | Disallow: /feed/ 24 | Disallow: /comments/ 25 | Disallow: /category/*/* 26 | Disallow: */trackback/ 27 | Disallow: */feed/ 28 | Disallow: */comments/ 29 | Disallow: /*? 30 | Allow: /wp-content/uploads/ 31 | -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-mailchimp-lock/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dannyvankooten/wp-dlm-mailchimp-lock", 3 | "type": "wordpress-plugin", 4 | "description": "Users must subscribe before being able to download a file.", 5 | "keywords": ["wordpress", "download monitor", "mailchimp"], 6 | "homepage": "https://www.download-monitor.com/extensions/mailchimp-lock/", 7 | "license": "GPL-2.0+", 8 | "authors": [ 9 | { 10 | "name": "Danny van Kooten", 11 | "email": "hi@dannyvankooten.com", 12 | "homepage": "https://dannyvankooten.com" 13 | } 14 | ], 15 | "require": { 16 | "php": ">=5.3.0" 17 | }, 18 | "autoload": { 19 | "psr-4": {"DownloadMonitor\\MailChimpLock\\": "src/"} 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/UninstallationUtil.php: -------------------------------------------------------------------------------- 1 | resolve(VersionPressServices::REPOSITORY); 15 | $initialCommit = $repository->getInitialCommit(); 16 | return $initialCommit && ChangeInfoMatcher::matchesChangeInfo($initialCommit->getMessage(), 'VersionPress\ChangeInfos\VersionPressChangeInfo'); 17 | } 18 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/zemanta/views/options-input-apikey.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | disabled="disabled" /> 7 | 8 | 9 | 10 |

11 | 12 |

13 | 14 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/zemanta/views/debug.php: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |

5 | 6 |

7 | : 8 |

9 | 10 |

11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |

25 | 26 |
-------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/UntrackedChangeInfo.php: -------------------------------------------------------------------------------- 1 | commitMessage = $commitMessage; 12 | } 13 | 14 | public function getCommitMessage() { 15 | return $this->commitMessage; 16 | } 17 | 18 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 19 | return new self($commitMessage); 20 | } 21 | 22 | public function getChangeDescription() { 23 | return $this->commitMessage->getSubject(); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/IdUtil.php: -------------------------------------------------------------------------------- 1 | resolve(VersionPressServices::VP_CONFIGURATION); 11 | ?> 12 | 13 |
14 | mergedConfig['gui'] === 'html') { 20 | require_once("inc/admin.php"); 21 | } else { 22 | require_once("inc/javascriptGUI.php"); 23 | } 24 | ?> 25 |
26 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/DI/VersionPressServices.php: -------------------------------------------------------------------------------- 1 |

' . $notice[1] . '

'; 10 | } 11 | } 12 | 13 | function wp_rp_add_admin_notice($type = 'updated', $message = '') { 14 | global $wp_rp_admin_notices; 15 | 16 | if (strtolower($type) == 'updated' && $message != '') { 17 | $wp_rp_admin_notices[] = array('updated', $message); 18 | return true; 19 | } 20 | 21 | if (strtolower($type) == 'error' && $message != '') { 22 | $wp_rp_admin_notices[] = array ('error', $message); 23 | return true; 24 | } 25 | 26 | return false; 27 | } 28 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/zemanta/views/assets.php: -------------------------------------------------------------------------------- 1 | 6 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkCommentChangeInfo.php: -------------------------------------------------------------------------------- 1 | count === 1) { 9 | return $this->changeInfos[0]->getChangeDescription(); 10 | } 11 | 12 | switch ($this->getAction()) { 13 | case "trash": 14 | return "Moved $this->count comments into trash"; 15 | case "untrash": 16 | return "Moved $this->count comments from trash"; 17 | case "spam": 18 | return "Marked $this->count comments as spam"; 19 | case "unspam": 20 | return "Marked $this->count comments as not spam"; 21 | } 22 | 23 | return parent::getChangeDescription(); 24 | } 25 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Initialization/InitializerStates.php: -------------------------------------------------------------------------------- 1 | count === 1) { 12 | return $this->changeInfos[0]->getChangeDescription(); 13 | } 14 | 15 | $taxonomies = StringUtils::pluralize($this->getTaxonomyName()); 16 | 17 | if ($this->getAction() === "delete") { 18 | return "Deleted $this->count $taxonomies"; 19 | } 20 | 21 | return parent::getChangeDescription(); 22 | } 23 | 24 | private function getTaxonomyName() { 25 | 26 | 27 | $termChangeInfo = $this->changeInfos[0]; 28 | return $termChangeInfo->getTaxonomyName(); 29 | } 30 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/Storage.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Initialization/web.tpl.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-amazon-s3/assets/js/amazon.js: -------------------------------------------------------------------------------- 1 | jQuery( function () { 2 | jQuery( '.download_monitor_files' ).on( 'click', 'a.dlm_amazon_s3', function ( e ) { 3 | 4 | var bucket = prompt( dlm_amazon_strings.bucket_prompt ); 5 | 6 | if ( bucket ) { 7 | var object = prompt( dlm_amazon_strings.object_prompt ); 8 | 9 | if ( !object ) { 10 | object = ''; 11 | } 12 | 13 | link = 'http://' + bucket + '.s3.amazonaws.com/' + object; 14 | 15 | downloadable_files_field = jQuery( this ).closest( '.downloadable_file' ).find( 'textarea[name^="downloadable_file_urls"]' ); 16 | 17 | old = jQuery.trim( jQuery( downloadable_files_field ).val() ); 18 | 19 | if ( old ) { 20 | old = old + "\n"; 21 | } 22 | 23 | jQuery( downloadable_files_field ).val( old + link ); 24 | 25 | } 26 | 27 | return false; 28 | } ); 29 | } ); -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/TermsStorage.php: -------------------------------------------------------------------------------- 1 | addDirectory(VERSIONPRESS_PLUGIN_DIR . '/src'); 22 | $robotLoader->setCacheStorage(new FileStorage(VERSIONPRESS_PLUGIN_DIR . '/temp')); 23 | $robotLoader->register(); 24 | 25 | global $versionPressContainer; 26 | $versionPressContainer = DIContainer::getConfiguredInstance(); 27 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/views/connect_notice.php: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
6 |
7 | Turn on 8 |
9 |
10 |

WordPress Related Posts are almost ready,

11 |

now all you need to do is connect to our service.

12 |
13 |
14 |
15 |

By turning on Related Posts you agree to terms of service.

16 |

You'll get Advanced Settings, Themes, Thumbnails and Analytics Dashboard. These features are provided by Zemanta as a service.

17 |
18 |
19 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/edit_related_posts.php: -------------------------------------------------------------------------------- 1 | database = $wpdb; 17 | } 18 | 19 | function synchronize($task, $entitiesToSynchronize = null) { 20 | $this->database->query("drop index term_id_taxonomy on {$this->database->term_taxonomy}"); 21 | $result = parent::synchronize($task, $entitiesToSynchronize); 22 | $this->database->query("create unique index term_id_taxonomy on {$this->database->term_taxonomy}(term_id, taxonomy)"); 23 | return $result; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/TermsSynchronizer.php: -------------------------------------------------------------------------------- 1 | dbSchema = $dbSchema; 17 | } 18 | 19 | protected function transformEntities($entities) { 20 | $transformedEntities = array(); 21 | foreach ($entities as $id => $entity) { 22 | $entityCopy = $entity; 23 | unset($entityCopy['taxonomies']); 24 | $entityCopy[$this->dbSchema->getEntityInfo('term')->idColumnName] = $id; 25 | 26 | $transformedEntities[] = $entityCopy; 27 | } 28 | return $transformedEntities; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/style.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'icomoon'; 3 | src:url('fonts/icomoon.eot?4bxk1r'); 4 | src:url('fonts/icomoon.eot?#iefix4bxk1r') format('embedded-opentype'), 5 | url('fonts/icomoon.woff?4bxk1r') format('woff'), 6 | url('fonts/icomoon.ttf?4bxk1r') format('truetype'), 7 | url('fonts/icomoon.svg?4bxk1r#icomoon') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | [class^="icon-"], [class*=" icon-"] { 13 | font-family: 'icomoon'; 14 | speak: none; 15 | font-style: normal; 16 | font-weight: normal; 17 | font-variant: normal; 18 | text-transform: none; 19 | line-height: 1; 20 | 21 | /* Better Font Rendering =========== */ 22 | -webkit-font-smoothing: antialiased; 23 | -moz-osx-font-smoothing: grayscale; 24 | } 25 | 26 | .icon-checkmark:before { 27 | content: "\e603"; 28 | } 29 | .icon-check-alt:before { 30 | content: "\e600"; 31 | } 32 | .icon-warning:before { 33 | content: "\e601"; 34 | } 35 | .icon-notification:before { 36 | content: "\e602"; 37 | } 38 | .icon-cog:before { 39 | content: "\e604"; 40 | } 41 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkPostChangeInfo.php: -------------------------------------------------------------------------------- 1 | changeInfos[0]; 13 | $postTypePlural = StringUtils::pluralize($postChangeInfo->getPostType()); 14 | 15 | if ($postTypePlural === "nav_menu_item") { 16 | return "Updated menu items"; 17 | } 18 | 19 | if ($this->count === 1) { 20 | return $this->changeInfos[0]->getChangeDescription(); 21 | } 22 | 23 | switch ($this->getAction()) { 24 | case "trash": 25 | return "Moved $this->count $postTypePlural to trash"; 26 | case "untrash": 27 | return "Moved $this->count $postTypePlural from trash"; 28 | case "edit": 29 | return "Updated $this->count $postTypePlural"; 30 | } 31 | 32 | return parent::getChangeDescription(); 33 | } 34 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/uninstall.php: -------------------------------------------------------------------------------- 1 | b.offset().top){for(var b=0,a=[],d={};10>b;b+=1)(d=ZemRPResponse.shift())&&a.push(d);var e=c(".related_post"),f=e.find("li").last().data("position")+1,g;c.each(a,function(b,a){g=c('
  • '+a.img+''+a.title+"
  • ");g.data("position",f);g.data("poid", 4 | a.id);e.append(g);f+=1});20>=ZemRPResponse.length&&j()}})}); 5 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/CompatibilityChecker.php: -------------------------------------------------------------------------------- 1 | argument in `rest_output_rsd` to 'VP-API' 21 | - Put all classes to namespace `VersionPress\Api\BundledWpApi` 22 | - Add use statements for all used classes beside `VersionPress\Api` 23 | - Change `$wp_vp_rest_server_class` value to 'VersionPress\\Api\\BundledWpApi\\WP_REST_Server' 24 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Configuration/VersionPressConfig.php: -------------------------------------------------------------------------------- 1 | 'javascript', 11 | 'requireApiAuth' => true 12 | ); 13 | 14 | public $customConfig = array(); 15 | public $mergedConfig = array(); 16 | 17 | public $gitBinary; 18 | 19 | function __construct() { 20 | 21 | $defaultsFile = VERSIONPRESS_PLUGIN_DIR . '/vpconfig.defaults.neon'; 22 | $customConfigFile = VERSIONPRESS_PLUGIN_DIR . '/vpconfig.neon'; 23 | 24 | $this->defaults = array_merge($this->defaults, Neon::decode(file_get_contents($defaultsFile))); 25 | 26 | if (file_exists($customConfigFile)) { 27 | $this->customConfig = Neon::decode(file_get_contents($customConfigFile)); 28 | if ($this->customConfig === null) { 29 | $this->customConfig = array(); 30 | } 31 | } 32 | 33 | $this->mergedConfig = array_merge($this->defaults, $this->customConfig); 34 | 35 | $this->gitBinary = $this->mergedConfig['git-binary']; 36 | 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/ProcessUtils.php: -------------------------------------------------------------------------------- 1 | getChangeDescription(), $this->getCommitMessageBody()); 16 | } 17 | 18 | private function getCommitMessageBody() { 19 | $actionTag = $this->getActionTagValue(); 20 | 21 | $tags = array(); 22 | if ($actionTag) { 23 | $tags[self::ACTION_TAG] = $actionTag; 24 | } 25 | 26 | $customTags = $this->getCustomTags(); 27 | $tags = array_merge($tags, $customTags); 28 | 29 | $body = ""; 30 | foreach ($tags as $tagName => $tagValue) { 31 | $body .= "$tagName: $tagValue\n"; 32 | } 33 | return $body; 34 | } 35 | 36 | abstract protected function getActionTagValue(); 37 | 38 | abstract public function getCustomTags(); 39 | 40 | abstract public function getChangedFiles(); 41 | 42 | } 43 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Database/ExtendedWpdb.php: -------------------------------------------------------------------------------- 1 | set_prefix($table_prefix); 14 | } 15 | 16 | function get_row($query = null, $output = OBJECT, $y = 0) { 17 | if ($output === ARRAY_MAP) { 18 | $result = parent::get_row($query, ARRAY_N, $y); 19 | return array($result[0] => $result[1]); 20 | } 21 | return parent::get_row($query, $output, $y); 22 | } 23 | 24 | function get_results($query = null, $output = OBJECT) { 25 | if ($output === ARRAY_MAP) { 26 | $result = parent::get_results($query, $output = ARRAY_N); 27 | if (!$this->last_result) return $result; 28 | 29 | $map = array(); 30 | foreach ($result as $row) { 31 | $map[$row[0]] = $row[1]; 32 | } 33 | return $map; 34 | } 35 | 36 | return parent::get_results($query, $output); 37 | } 38 | } -------------------------------------------------------------------------------- /nginx-site.conf: -------------------------------------------------------------------------------- 1 | server { 2 | 3 | listen 80; 4 | server_name localhost; 5 | root /app/public.built; 6 | 7 | index index.html index.htm index.php; 8 | 9 | access_log /var/log/nginx/app.access.log; 10 | error_log /var/log/nginx/app.access.log; 11 | 12 | charset utf-8; 13 | location / { 14 | root /app/public.built; 15 | # This is cool because no php is touched for static content. 16 | # include the "?$args" part so non-default permalinks doesn't break when using query string 17 | try_files $uri $uri/ /index.php?$args; 18 | } 19 | 20 | location ~ \.php { 21 | root /app/public.built; 22 | fastcgi_pass 127.0.0.1:9000; 23 | # or if you used a unix socket 24 | # fastcgi_pass unix:/var/run/hhvm/sock; 25 | fastcgi_index index.php; 26 | fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 27 | include fastcgi_params; 28 | } 29 | 30 | location = /favicon.ico { log_not_found off; access_log off; } 31 | location = /robots.txt { log_not_found off; access_log off; } 32 | 33 | error_page 404 /index.php; 34 | 35 | 36 | 37 | # Deny .htaccess file access 38 | location ~ /\.ht { 39 | deny all; 40 | } 41 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/PostMetaStorage.php: -------------------------------------------------------------------------------- 1 | $value) { 17 | if (is_int($name)) { 18 | $cliCommand .= " " . escapeshellarg($value); 19 | } elseif ($value !== null) { 20 | $cliCommand .= " --$name=" . escapeshellarg($value); 21 | } else { 22 | $cliCommand .= " --$name"; 23 | } 24 | } 25 | 26 | return self::exec($cliCommand, $cwd); 27 | } 28 | 29 | public static function exec($command, $cwd = null) { 30 | 31 | 32 | 33 | if (isset($_SERVER["XDEBUG_CONFIG"])) { 34 | $env = $_SERVER; 35 | unset($env["XDEBUG_CONFIG"]); 36 | } else { 37 | $env = null; 38 | } 39 | 40 | $process = new Process($command, $cwd, $env); 41 | $process->run(); 42 | return $process; 43 | } 44 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/OptionChangeInfo.php: -------------------------------------------------------------------------------- 1 | getAction())) . " option '{$this->getEntityId()}'"; 16 | } 17 | 18 | static function buildFromCommitMessage(CommitMessage $commitMessage) { 19 | $tags = $commitMessage->getVersionPressTags(); 20 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 21 | list(, $action, $entityId) = explode("/", $actionTag, 3); 22 | return new self($action, $entityId); 23 | } 24 | 25 | public function getCustomTags() { 26 | return array(); 27 | } 28 | 29 | public function getChangedFiles() { 30 | 31 | $result = parent::getChangedFiles(); 32 | if ($this->getEntityId() == "rewrite_rules") { 33 | $result[] = array("type" => "path", "path" => ABSPATH . ".htaccess"); 34 | } 35 | 36 | return $result; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/wp_related_posts.php: -------------------------------------------------------------------------------- 1 | Related Posts tab to configure your settings. 7 | Author: Zemanta Ltd. 8 | Author URI: http://www.zemanta.com 9 | */ 10 | 11 | if (! function_exists('wp_rp_init_zemanta')) { 12 | function wp_rp_init_error() { 13 | ?> 14 |
    15 |

    16 |
    17 | 30 |
    31 |

    32 |
    33 | entityName = $entityName; 15 | $this->action = $action; 16 | $this->entityId = $entityId; 17 | } 18 | 19 | public function getEntityName() { 20 | return $this->entityName; 21 | } 22 | 23 | public function getAction() { 24 | return $this->action; 25 | } 26 | 27 | public function getEntityId() { 28 | return $this->entityId; 29 | } 30 | 31 | protected function getActionTagValue() { 32 | return "{$this->getEntityName()}/{$this->getAction()}/{$this->getEntityId()}"; 33 | } 34 | 35 | public function getChangedFiles() { 36 | $change = array( 37 | "type" => "storage-file", 38 | "entity" => $this->getEntityName(), 39 | "id" => $this->getEntityId(), 40 | "parent-id" => $this->getParentId() 41 | ); 42 | 43 | return array($change); 44 | } 45 | 46 | public function getParentId() { 47 | return null; 48 | } 49 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Database/wordpress-schema.neon: -------------------------------------------------------------------------------- 1 | post: 2 | table: posts 3 | id: ID 4 | references: 5 | post_author: user 6 | post_parent: post 7 | mn-references: 8 | term_relationships.term_taxonomy_id: term_taxonomy 9 | 10 | postmeta: 11 | id: meta_id 12 | references: 13 | post_id: post 14 | value-references: 15 | meta_key@meta_value: 16 | _thumbnail_id: post 17 | _menu_item_object_id: @\VersionPress\Database\VpidRepository::getMenuReference 18 | _menu_item_menu_item_parent: post 19 | 20 | comment: 21 | table: comments 22 | id: comment_ID 23 | references: 24 | comment_post_ID: post 25 | user_id: user 26 | comment_parent: comment 27 | 28 | user: 29 | table: users 30 | id: ID 31 | 32 | term: 33 | table: terms 34 | id: term_id 35 | 36 | term_taxonomy: 37 | id: term_taxonomy_id 38 | references: 39 | parent: term_taxonomy 40 | term_id: term 41 | mn-references: 42 | @term_relationships.object_id: post 43 | 44 | usermeta: 45 | id: umeta_id 46 | references: 47 | user_id: user 48 | 49 | option: 50 | table: options 51 | vpid: option_name 52 | value-references: 53 | option_name@option_value: 54 | site_icon: post 55 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/UserChangeInfo.php: -------------------------------------------------------------------------------- 1 | userLogin = $userLogin; 15 | } 16 | 17 | public function getChangeDescription() { 18 | if ($this->getAction() === "create") { 19 | return "New user '{$this->userLogin}'"; 20 | } 21 | 22 | if ($this->getAction() === "delete") { 23 | return "Deleted user '{$this->userLogin}'"; 24 | } 25 | 26 | return "Edited user '{$this->userLogin}'"; 27 | } 28 | 29 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 30 | $tags = $commitMessage->getVersionPressTags(); 31 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 32 | $userLogin = $tags[self::USER_LOGIN]; 33 | list(, $action, $entityId) = explode("/", $actionTag); 34 | return new self($action, $entityId, $userLogin); 35 | } 36 | 37 | public function getCustomTags() { 38 | return array( 39 | self::USER_LOGIN => $this->userLogin 40 | ); 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/CommitMessage.php: -------------------------------------------------------------------------------- 1 | subject = $subject; 16 | $this->body = $body; 17 | } 18 | 19 | public function getSubject() { 20 | return $this->subject; 21 | } 22 | 23 | public function getBody() { 24 | return $this->body; 25 | } 26 | 27 | public function getVersionPressTags() { 28 | if (!$this->tags) { 29 | $tagLines = array_filter( 30 | array_map("trim", explode("\n", $this->getBody())), 31 | function ($line) { 32 | return Strings::startsWith($line, "VP-") || Strings::startsWith($line, "X-VP-"); 33 | } 34 | ); 35 | $tags = array(); 36 | foreach ($tagLines as $line) { 37 | list($key, $value) = array_map("trim", explode(":", $line, 2)); 38 | $tags[$key] = $value; 39 | } 40 | 41 | $this->tags = $tags; 42 | } 43 | return $this->tags; 44 | } 45 | 46 | public function getVersionPressTag($tagName) { 47 | $tags = $this->getVersionPressTags(); 48 | return isset($tags[$tagName]) ? $tags[$tagName] : ""; 49 | } 50 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/ChangeInfoPreprocessors/PostChangeInfoPreprocessor.php: -------------------------------------------------------------------------------- 1 | $changeInfo) { 14 | if ($changeInfo instanceof PostChangeInfo && in_array($changeInfo->getAction(), array("draft", "publish"))) { 15 | if (!isset($entities[$changeInfo->getEntityId()])) { 16 | $entities[$changeInfo->getEntityId()] = array(); 17 | } 18 | $entities[$changeInfo->getEntityId()][$changeInfo->getAction()] = $key; 19 | } 20 | } 21 | 22 | foreach($entities as $entityId => $changeInfos) { 23 | if(count($changeInfos) == 2) { 24 | 25 | 26 | $publish = $changeInfoList[$changeInfos["publish"]]; 27 | unset($changeInfoList[$changeInfos["draft"]]); 28 | unset($changeInfoList[$changeInfos["publish"]]); 29 | $changeInfoList[] = new PostChangeInfo("create", $publish->getEntityId(), $publish->getPostType(), $publish->getPostTitle()); 30 | } 31 | } 32 | return array($changeInfoList); 33 | } 34 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/batcache.php: -------------------------------------------------------------------------------- 1 | configure_groups(); 16 | 17 | // Regen home and permalink on posts and pages 18 | add_action('clean_post_cache', 'batcache_post'); 19 | 20 | // Regen permalink on comments (TODO) 21 | //add_action('comment_post', 'batcache_comment'); 22 | //add_action('wp_set_comment_status', 'batcache_comment'); 23 | //add_action('edit_comment', 'batcache_comment'); 24 | 25 | function batcache_post($post_id) { 26 | global $batcache; 27 | 28 | $post = get_post($post_id); 29 | if ( $post->post_type == 'revision' || get_post_status($post_id) != 'publish' ) 30 | return; 31 | 32 | batcache_clear_url( get_option('home') ); 33 | batcache_clear_url( trailingslashit( get_option('home') ) ); 34 | batcache_clear_url( get_permalink($post_id) ); 35 | } 36 | 37 | function batcache_clear_url($url) { 38 | global $batcache; 39 | if ( empty($url) ) 40 | return false; 41 | $url_key = md5($url); 42 | wp_cache_add("{$url_key}_version", 0, $batcache->group); 43 | return wp_cache_incr("{$url_key}_version", 1, $batcache->group); 44 | } 45 | 46 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/ChangeInfoPreprocessors/PostTermSplittingPreprocessor.php: -------------------------------------------------------------------------------- 1 | containsPostChangeInfo($changeInfoList) && $this->containsTermChangeInfo($changeInfoList)) { 13 | $termChangeInfoList = array_values(array_filter($changeInfoList, function ($changeInfo) { return $changeInfo instanceof TermChangeInfo; })); 14 | $restChangeInfoList = array_values(array_filter($changeInfoList, function ($changeInfo) { return !($changeInfo instanceof TermChangeInfo); })); 15 | 16 | return array ($termChangeInfoList, $restChangeInfoList); 17 | } 18 | 19 | return array($changeInfoList); 20 | } 21 | 22 | private function containsPostChangeInfo($changeInfoList) { 23 | return ArrayUtils::any($changeInfoList, function ($changeInfo) { 24 | return $changeInfo instanceof PostChangeInfo; 25 | }); 26 | } 27 | 28 | private function containsTermChangeInfo($changeInfoList) { 29 | return ArrayUtils::any($changeInfoList, function ($changeInfo) { 30 | return $changeInfo instanceof TermChangeInfo; 31 | }); 32 | } 33 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/UsersSynchronizer.php: -------------------------------------------------------------------------------- 1 | 47 |
    48 |

    49 |
    50 | data = $data; 19 | $this->set_status( $status ); 20 | $this->set_headers( $headers ); 21 | } 22 | 23 | public function get_headers() { 24 | return $this->headers; 25 | } 26 | 27 | public function set_headers( $headers ) { 28 | $this->headers = $headers; 29 | } 30 | 31 | public function header( $key, $value, $replace = true ) { 32 | if ( $replace || ! isset( $this->headers[ $key ] ) ) { 33 | $this->headers[ $key ] = $value; 34 | } else { 35 | $this->headers[ $key ] .= ', ' . $value; 36 | } 37 | } 38 | 39 | public function get_status() { 40 | return $this->status; 41 | } 42 | 43 | public function set_status( $code ) { 44 | $this->status = absint( $code ); 45 | } 46 | 47 | public function get_data() { 48 | return $this->data; 49 | } 50 | 51 | public function set_data( $data ) { 52 | $this->data = $data; 53 | } 54 | 55 | public function jsonSerialize() { 56 | 57 | return $this->get_data(); 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/zemanta/views/options.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
    5 | 6 | 7 | 8 |
    9 |
    10 |
    11 | 12 |
    13 |

    14 | 15 |

    16 | 17 |
    18 |
    19 |
    20 |
    21 |
    22 | 23 |
    24 | 25 | 26 | 27 | 28 | 29 |

    30 | 31 |

    32 | 33 | 34 |
    35 | 36 |
    37 | -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-mailchimp-lock/plugin.php: -------------------------------------------------------------------------------- 1 | dependencies_installed ) { 68 | return false; 69 | } 70 | 71 | if( is_admin() ) { 72 | if( defined( 'DOING_AJAX' ) && DOING_AJAX ) { 73 | 74 | } else { 75 | new Admin\Manager(); 76 | } 77 | } else { 78 | new DownloadLocker(); 79 | } 80 | 81 | } 82 | 83 | 84 | 85 | } 86 | 87 | $GLOBALS['DLM_MailChimp_Lock'] = Plugin::instance(); -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-mailchimp-lock/src/DependencyCheck.php: -------------------------------------------------------------------------------- 1 | dependencies_installed = $this->check_dependencies(); 17 | $this->add_actions(); 18 | } 19 | 20 | /** 21 | * Check if the plugin dependencies are installed 22 | * @return bool 23 | */ 24 | private function check_dependencies() { 25 | 26 | // check for mailchimp for wordpress pro 27 | if( defined( 'MC4WP_VERSION' ) && version_compare( MC4WP_VERSION, '2.5', '>=' ) ) { 28 | return true; 29 | } 30 | 31 | // check for mailchimp for wordpress lite 32 | if( defined( 'MC4WP_LITE_VERSION' ) && version_compare( MC4WP_LITE_VERSION, '2.2', '>=' ) ) { 33 | return true; 34 | } 35 | 36 | return false; 37 | } 38 | 39 | /** 40 | * @return bool 41 | */ 42 | private function add_actions() { 43 | 44 | // only add actions when dependencies are not installed 45 | if( $this->dependencies_installed ) { 46 | return false; 47 | } 48 | 49 | add_action( 'admin_notices', array( $this, 'admin_notice' ) ); 50 | 51 | return true; 52 | } 53 | 54 | /** 55 | * Outputs admin notice telling the user to install the required dependencies 56 | */ 57 | public function admin_notice() { 58 | ?> 59 |
    60 |

    %s in order to use %s.', 'mailchimp-sync' ), 'https://wordpress.org/plugins/mailchimp-for-wp/', 'MailChimp for WordPress', 'MailChimp Lock Extension for Download Monitor' ); ?>

    61 |
    62 | . 28 | */ 29 | 30 | // Prevent direct file access 31 | if ( ! defined( 'ABSPATH' ) ) { 32 | header( 'Status: 403 Forbidden' ); 33 | header( 'HTTP/1.1 403 Forbidden' ); 34 | exit; 35 | } 36 | 37 | // Check if PHP is at the minimum required version 38 | if( version_compare( PHP_VERSION, '5.3', '>=' ) ) { 39 | define( 'DLM_MAILCHIMP_LOCK_FILE', __FILE__ ); 40 | require_once dirname( __FILE__ ) . '/plugin.php'; 41 | } else { 42 | require_once dirname( __FILE__ ) . '/php-backwards-compatibility.php'; 43 | } 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/Mirror.php: -------------------------------------------------------------------------------- 1 | storageFactory = $storageFactory; 17 | $this->urlReplacer = $urlReplacer; 18 | } 19 | 20 | public function save($entityName, $data) { 21 | $storage = $this->storageFactory->getStorage($entityName); 22 | if ($storage == null) { 23 | return; 24 | } 25 | 26 | $data = $this->urlReplacer->replace($data); 27 | $changeInfo = $storage->save($data); 28 | if ($changeInfo) { 29 | $this->changeList[] = $changeInfo; 30 | } 31 | } 32 | 33 | public function delete($entityName, $restriction) { 34 | $storage = $this->storageFactory->getStorage($entityName); 35 | if ($storage == null) { 36 | return; 37 | } 38 | 39 | $changeInfo = $storage->delete($restriction); 40 | if ($changeInfo) { 41 | $this->changeList[] = $changeInfo; 42 | } 43 | } 44 | 45 | public function getChangeList() { 46 | return $this->changeList; 47 | } 48 | 49 | public function shouldBeSaved($entityName, $data) { 50 | $storage = $this->storageFactory->getStorage($entityName); 51 | if ($storage === null) 52 | return false; 53 | return $storage->shouldBeSaved($data); 54 | } 55 | 56 | public function flushChangeList() { 57 | $this->changeList = array(); 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/Zip.php: -------------------------------------------------------------------------------- 1 | open($zipFile, ZipArchive::CREATE)) { 17 | return false; 18 | } 19 | 20 | $directory = str_replace('\\', '/', realpath($directory)); 21 | 22 | if (is_dir($directory) === true) { 23 | $files = new RecursiveIteratorIterator( 24 | new RecursiveDirectoryIterator($directory), 25 | RecursiveIteratorIterator::SELF_FIRST 26 | ); 27 | 28 | foreach ($files as $file) { 29 | $file = str_replace('\\', '/', $file); 30 | 31 | if (in_array(substr($file, strrpos($file, '/') + 1), array('.', '..'))) { 32 | continue; 33 | } 34 | 35 | $file = str_replace('\\', '/', realpath($file)); 36 | 37 | if (is_dir($file)) { 38 | $zip->addEmptyDir(str_replace($directory . '/', '', $file . '/')); 39 | } else { 40 | if (is_file($file)) { 41 | $zip->addFromString(str_replace($directory . '/', '', $file), file_get_contents($file)); 42 | } 43 | } 44 | } 45 | } else { 46 | if (is_file($directory)) { 47 | $zip->addFromString(basename($directory), file_get_contents($directory)); 48 | } 49 | } 50 | 51 | return $zip->close(); 52 | } 53 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/ReferenceUtils.php: -------------------------------------------------------------------------------- 1 | getEntityInfo($entityName)->mnReferences[$reference]; 12 | $sourceColumn = self::getSourceColumn($dbSchema, $entityName, $targetEntity, $junctionTable); 13 | return array( 14 | 'junction-table' => $junctionTable, 15 | 'source-entity' => $entityName, 16 | 'source-column' => $sourceColumn, 17 | 'target-entity' => $targetEntity, 18 | 'target-column' => $targetColumn, 19 | ); 20 | } 21 | 22 | public static function getValueReferenceDetails($reference) { 23 | list($keyCol, $valueColumn) = explode("@", $reference); 24 | list($sourceColumn, $sourceValue) = explode("=", $keyCol); 25 | 26 | return array( 27 | 'source-column' => $sourceColumn, 28 | 'source-value' => $sourceValue, 29 | 'value-column' => $valueColumn, 30 | ); 31 | } 32 | 33 | private static function getSourceColumn(DbSchemaInfo $dbSchema, $sourceEntity, $targetEntity, $junctionTable) { 34 | $targetEntityMnReferences = $dbSchema->getEntityInfo($targetEntity)->mnReferences; 35 | foreach ($targetEntityMnReferences as $reference => $referencedEntity) { 36 | list($referencedTable, $referenceColumn) = explode(".", $reference); 37 | if ($referencedTable === $junctionTable && $referencedEntity === $sourceEntity) { 38 | return $referenceColumn; 39 | } 40 | } 41 | 42 | return null; 43 | } 44 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/GitLogPaginator.php: -------------------------------------------------------------------------------- 1 | repository = $repository; 13 | } 14 | 15 | public function getPage($pageNumber) { 16 | $this->numberOfCommits = $this->repository->getNumberOfCommits(); 17 | 18 | $firstCommitIndex = $pageNumber * $this->commitsPerPage; 19 | $lastCommitIndex = ($pageNumber + 1) * $this->commitsPerPage; 20 | 21 | if ($lastCommitIndex >= $this->numberOfCommits) { 22 | $range = sprintf("HEAD~%s", $firstCommitIndex); 23 | $this->isLastPage = true; 24 | } else { 25 | $range = sprintf("HEAD~%s..HEAD~%s", $lastCommitIndex, $firstCommitIndex); 26 | $this->isLastPage = false; 27 | } 28 | 29 | return $this->repository->log($range); 30 | } 31 | 32 | public function isLastPage() { 33 | return $this->isLastPage; 34 | } 35 | 36 | public function setCommitsPerPage($commitsPerPage) { 37 | $this->commitsPerPage = $commitsPerPage; 38 | } 39 | 40 | public function getPrettySteps($currentPage) { 41 | $page = $currentPage; 42 | $pageCount = ceil($this->numberOfCommits / (double)$this->commitsPerPage); 43 | 44 | if ($pageCount < 2) { 45 | return array(); 46 | } 47 | 48 | $arr = range(max(0, $page - 3), min($pageCount - 1, $page + 3)); 49 | $count = 4; 50 | $quotient = ($pageCount - 1) / $count; 51 | for ($i = 0; $i <= $count; $i++) { 52 | $arr[] = round($quotient * $i); 53 | } 54 | sort($arr); 55 | $steps = array_values(array_unique($arr)); 56 | 57 | return $steps; 58 | } 59 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/PostsSynchronizer.php: -------------------------------------------------------------------------------- 1 | database = $wpdb; 17 | } 18 | 19 | protected function filterEntities($entities) { 20 | $filteredEntities = array(); 21 | 22 | foreach ($entities as $entity) { 23 | $entityClone = $entity; 24 | unset($entityClone['category'], $entityClone['post_tag']); 25 | $entityClone = $this->removePostMeta($entityClone); 26 | $filteredEntities[] = $entityClone; 27 | } 28 | 29 | return parent::filterEntities($filteredEntities); 30 | } 31 | 32 | protected function doEntitySpecificActions() { 33 | if ($this->passNumber == 1) { 34 | return false; 35 | } 36 | 37 | $this->fixCommentCounts(); 38 | return true; 39 | } 40 | 41 | private function fixCommentCounts() { 42 | $sql = "update {$this->database->prefix}posts set comment_count = 43 | (select count(*) from {$this->database->prefix}comments where comment_post_ID = {$this->database->prefix}posts.ID and comment_approved = 1);"; 44 | $this->database->query($sql); 45 | } 46 | 47 | private function removePostMeta($entity) { 48 | $postWithoutMeta = array(); 49 | 50 | foreach ($entity as $key => $value) { 51 | if (Strings::contains($key, '#')) continue; 52 | $postWithoutMeta[$key] = $value; 53 | } 54 | 55 | return $postWithoutMeta; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/js/dashboard.js: -------------------------------------------------------------------------------- 1 | (function(a){a(function(){var g=a("#wp_rp_ajax_nonce").val(),h=function(c,b,e){a.ajax({url:ajaxurl,data:{action:"wprp_subscribe",subscription:b,_wpnonce:g,email:c||"0"},success:e,type:"POST"})},i=function(){var c=1!==a("#wp_rp_desktop_custom_theme_enabled:checked").length;a("#wp_rp_desktop_theme_custom_css").prop("readonly",c)};i();a("#wp_rp_desktop_custom_theme_enabled").click(i);a("#wp_rp_subscribe_email").length&&(a("#wp_rp_subscribe_email").val().length?a("#wp_rp_subscribe_button").hide():a("#wp_rp_unsubscribe_button").hide()); 2 | a("#wp_rp_subscribe_button").on("click",function(c){var b=a("#wp_rp_subscribe_email").val();c.preventDefault();b&&(a("#wp_rp_subscribe_button").attr("disabled",!0),h(b,"activityreport,newsletter",function(b){a("#wp_rp_subscribe_button").attr("disabled",!1);parseInt(b)&&(a("#wp_rp_subscribe_button").prop("disabled",!1),a("#wp_rp_subscribe_button").hide(),a("#wp_rp_unsubscribe_button").show(),alert("Subscription successful!"))}))});a("#wp_rp_unsubscribe_button").on("click",function(c){c.preventDefault(); 3 | a("#wp_rp_unsubscribe_button").attr("disabled",!0);h(!1,!1,function(b){a("#wp_rp_unsubscribe_button").attr("disabled",!1);parseInt(b)&&(a("#wp_rp_subscribe_email").val(""),a("#wp_rp_unsubscribe_button").hide(),a("#wp_rp_subscribe_button").show())})});a("#wp_rp_wrap .collapsible .collapse-handle").on("click",function(c){var b=a(this).closest(".collapsible"),e=b.find(".container"),f=b.hasClass("collapsed"),d=b.attr("block");f?(e.slideDown(),a.post(ajaxurl,{action:"rp_show_hide_"+d,show:!0,_wpnonce:g})): 4 | (e.slideUp(),a.post(ajaxurl,{action:"rp_show_hide_"+d,hide:!0,_wpnonce:g}));b.toggleClass("collapsed");"statistics"===d&&(d="statistics_"+(f?"on":"off"),b=void 0,e=new Image,f="https:"===location.protocol?"https://":"http://",d={"zem-habit-platform":"wordpress-wprp","zem-habit-action":d,"zem-habit-timestamp":(new Date).getTime()},b=b||{},d=a.extend(b,d),e.src=f+"eyepatch.zemanta.com/log/?"+object_to_query(d));c.preventDefault()})})})(jQuery); 5 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/SynchronizerFactory.php: -------------------------------------------------------------------------------- 1 | 'VersionPress\Synchronizers\PostsSynchronizer', 25 | 'postmeta' => 'VersionPress\Synchronizers\PostMetaSynchronizer', 26 | 'comment' => 'VersionPress\Synchronizers\CommentsSynchronizer', 27 | 'option' => 'VersionPress\Synchronizers\OptionsSynchronizer', 28 | 'user' => 'VersionPress\Synchronizers\UsersSynchronizer', 29 | 'usermeta' => 'VersionPress\Synchronizers\UserMetaSynchronizer', 30 | 'term' => 'VersionPress\Synchronizers\TermsSynchronizer', 31 | 'term_taxonomy' => 'VersionPress\Synchronizers\TermTaxonomySynchronizer', 32 | ); 33 | 34 | function __construct(StorageFactory $storageFactory, $wpdb, DbSchemaInfo $dbSchema, AbsoluteUrlReplacer $urlReplacer) { 35 | $this->storageFactory = $storageFactory; 36 | $this->database = $wpdb; 37 | $this->dbSchema = $dbSchema; 38 | $this->urlReplacer = $urlReplacer; 39 | } 40 | 41 | public function createSynchronizer($synchronizerName) { 42 | $synchronizerClass = $this->synchronizerClasses[$synchronizerName]; 43 | return new $synchronizerClass($this->getStorage($synchronizerName), $this->database, $this->dbSchema, $this->urlReplacer); 44 | } 45 | 46 | public function getAllSupportedSynchronizers() { 47 | return array_keys($this->synchronizerClasses); 48 | } 49 | 50 | private function getStorage($synchronizerName) { 51 | return $this->storageFactory->getStorage($synchronizerName); 52 | } 53 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Database/DbSchemaInfo.php: -------------------------------------------------------------------------------- 1 | schema = Neon::decode($neonSchema); 18 | $this->prefix = $prefix; 19 | } 20 | 21 | public function getEntityInfo($entityName) { 22 | if (!isset($this->entityInfoRegistry[$entityName])) { 23 | $this->entityInfoRegistry[$entityName] = new EntityInfo(array($entityName => $this->schema[$entityName])); 24 | } 25 | 26 | return $this->entityInfoRegistry[$entityName]; 27 | } 28 | 29 | public function getAllEntityNames() { 30 | return array_keys($this->schema); 31 | } 32 | 33 | public function getTableName($entityName) { 34 | $tableName = $this->isEntity($entityName) ? $this->getEntityInfo($entityName)->tableName : $entityName; 35 | return $tableName; 36 | } 37 | 38 | public function getPrefixedTableName($entityName) { 39 | return $this->prefix . $this->getTableName($entityName); 40 | } 41 | 42 | public function getEntityInfoByTableName($tableName) { 43 | $entityNames = $this->getAllEntityNames(); 44 | foreach ($entityNames as $entityName) { 45 | $entityInfo = $this->getEntityInfo($entityName); 46 | if ($entityInfo->tableName === $tableName) 47 | return $entityInfo; 48 | } 49 | return null; 50 | } 51 | 52 | public function getEntityInfoByPrefixedTableName($tableName) { 53 | $tableName = substr($tableName, strlen($this->prefix)); 54 | return $this->getEntityInfoByTableName($tableName); 55 | } 56 | 57 | private function isEntity($entityOrTableName) { 58 | return in_array($entityOrTableName, $this->getAllEntityNames()); 59 | } 60 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/UserMetaChangeInfo.php: -------------------------------------------------------------------------------- 1 | userLogin = $userLogin; 21 | $this->userMetaKey = $userMetaKey; 22 | $this->userVpId = $userVpId; 23 | } 24 | 25 | public function getChangeDescription() { 26 | if ($this->getAction() === "create") { 27 | return "New user-meta '{$this->userMetaKey}' for user '{$this->userLogin}'"; 28 | } 29 | 30 | if ($this->getAction() === "delete") { 31 | return "Deleted user-meta '{$this->userMetaKey}' for user '{$this->userLogin}'"; 32 | } 33 | 34 | return "Edited user-meta '{$this->userMetaKey}' for user '{$this->userLogin}'"; 35 | } 36 | 37 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 38 | $tags = $commitMessage->getVersionPressTags(); 39 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 40 | $userMetaKey = $tags[self::USER_META_KEY]; 41 | $userLogin = $tags[self::USER_LOGIN]; 42 | $userVpId = $tags[self::USER_VPID_TAG]; 43 | list(, $action, $entityId) = explode("/", $actionTag); 44 | return new self($action, $entityId, $userLogin, $userMetaKey, $userVpId); 45 | } 46 | 47 | public function getCustomTags() { 48 | return array( 49 | self::USER_LOGIN => $this->userLogin, 50 | self::USER_META_KEY => $this->userMetaKey, 51 | self::USER_VPID_TAG => $this->userVpId 52 | ); 53 | } 54 | 55 | public function getParentId() { 56 | return $this->userVpId; 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Git/Commit.php: -------------------------------------------------------------------------------- 1 | hash = $hash; 28 | $commit->date = new DateTime($date); 29 | $commit->relativeDate = $relativeDate; 30 | $commit->authorName = $authorName; 31 | $commit->authorEmail = $authorEmail; 32 | $commit->isMerge = strpos($parentHashes, ' ') !== false; 33 | $commit->message = new CommitMessage($messageHead, $messageBody); 34 | 35 | if ($rawStatus === "") { 36 | return $commit; 37 | } 38 | 39 | foreach (explode("\n", $rawStatus) as $line) { 40 | list($status, $path) = explode("\t", $line); 41 | $commit->changedFiles[] = array("status" => $status, "path" => $path); 42 | } 43 | 44 | return $commit; 45 | } 46 | 47 | public function getHash() { 48 | return $this->hash; 49 | } 50 | 51 | public function getShortHash() { 52 | return substr($this->hash, 0, 7); 53 | } 54 | 55 | public function getDate() { 56 | return $this->date; 57 | } 58 | 59 | public function getRelativeDate() { 60 | return $this->relativeDate; 61 | } 62 | 63 | public function getAuthorName() { 64 | return $this->authorName; 65 | } 66 | 67 | public function getAuthorEmail() { 68 | return $this->authorEmail; 69 | } 70 | 71 | public function getMessage() { 72 | return $this->message; 73 | } 74 | 75 | public function isMerge() { 76 | return $this->isMerge; 77 | } 78 | 79 | public function getChangedFiles() { 80 | return $this->changedFiles; 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/zemanta/views/scripts.php: -------------------------------------------------------------------------------- 1 | 2 | 73 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/RevertChangeInfo.php: -------------------------------------------------------------------------------- 1 | action = $action; 20 | $this->commitHash = $commitHash; 21 | } 22 | 23 | public function getEntityName() { 24 | return self::OBJECT_TYPE; 25 | } 26 | 27 | public function getAction() { 28 | return $this->action; 29 | } 30 | 31 | public function getCommitHash() { 32 | return $this->commitHash; 33 | } 34 | 35 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 36 | $tags = $commitMessage->getVersionPressTags(); 37 | list(, $action, $commitHash) = explode("/", $tags[TrackedChangeInfo::ACTION_TAG], 3); 38 | return new self($action, $commitHash); 39 | } 40 | 41 | public function getChangeDescription() { 42 | global $versionPressContainer; 43 | 44 | 45 | $repository = $versionPressContainer->resolve(VersionPressServices::REPOSITORY); 46 | $revertedCommit = $repository->getCommit($this->commitHash); 47 | 48 | if ($this->action === self::ACTION_UNDO) { 49 | $revertedChangeInfo = ChangeInfoMatcher::buildChangeInfo($revertedCommit->getMessage()); 50 | return sprintf("Reverted change \"%s\"", $revertedChangeInfo->getChangeDescription()); 51 | } 52 | 53 | return sprintf("Rollback to the same state as of %s", $revertedCommit->getDate()->format('d-M-y H:i:s')); 54 | } 55 | 56 | protected function getActionTagValue() { 57 | return sprintf("%s/%s/%s", self::OBJECT_TYPE, $this->getAction(), $this->commitHash); 58 | } 59 | 60 | public function getCustomTags() { 61 | return array(); 62 | } 63 | 64 | public function getChangedFiles() { 65 | return array(array("type" => "path", "path" => "*")); 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/modern.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap { 2 | clear: both; 3 | } 4 | 5 | .wp_rp_wrap .related_post_title { 6 | background: rgba(245, 245, 245, 1) !important; 7 | padding: 3px 0 3px 10px !important; 8 | margin: 0 !important; 9 | font-weight: normal; 10 | border-radius: 2px !important; 11 | border: 1px solid rgba(0, 0, 0, .1) !important; 12 | clear: both !important; 13 | } 14 | div.wp_rp_content { 15 | display: block !important; 16 | } 17 | 18 | div.wp_rp_footer { 19 | text-align: right !important; 20 | overflow: hidden !important; 21 | } 22 | div.wp_rp_footer a { 23 | color: #999 !important; 24 | font-size: 11px !important; 25 | text-decoration: none !important; 26 | display: inline-block !important; 27 | } 28 | div.wp_rp_footer a.wp_rp_edit { 29 | color: #fff !important; 30 | font-size: 12px !important; 31 | text-decoration: underline !important; 32 | font-weight: bold !important; 33 | background: #f79124 !important; 34 | border-radius: 2px !important; 35 | padding: 3px 6px; 36 | } 37 | ul.related_post { 38 | margin: 0 0 18px 0 !important; 39 | padding: 0 !important; 40 | } 41 | 42 | ul.related_post li { 43 | position: relative !important; 44 | min-height: 60px; 45 | list-style: none !important; 46 | padding: 10px 0 10px 0 !important; 47 | margin: 0 !important; 48 | border-bottom: 1px solid rgba(0, 0, 0, .1) !important; 49 | background: none !important; 50 | } 51 | 52 | ul.related_post li a { 53 | position: relative !important; 54 | text-decoration:none; 55 | text-indent: 0 !important; 56 | } 57 | 58 | ul.related_post li a img { 59 | width: 60px; 60 | height: 60px; 61 | float: left !important; 62 | margin: 0 10px 0 0 !important; 63 | padding: 0 !important; 64 | max-width: 100% !important; 65 | float: none !important; 66 | } 67 | 68 | ul.related_post li a img.wp_rp_santa_hat { 69 | display: none !important; 70 | } 71 | 72 | ul.related_post li a.title { 73 | vertical-align: top !important; 74 | } 75 | 76 | /* override old CSS for new plugin version with CSS classes */ 77 | ul.related_post li a.wp_rp_thumbnail { 78 | float: left !important; 79 | margin-right: 10px !important; 80 | } 81 | ul.related_post li a.wp_rp_thumbnail img { 82 | float: none !important; 83 | margin-right: 0 !important; 84 | display: block !important; 85 | } 86 | -------------------------------------------------------------------------------- /public/wp-content/plugins/dlm-amazon-s3/readme.txt: -------------------------------------------------------------------------------- 1 | === Download Monitor Amazon S3 Integration === 2 | Contributors: mikejolley 3 | Tags: download, amazon s3 4 | Requires at least: 3.5 5 | Tested up to: 4.0 6 | Stable tag: 1.0.6 7 | License: GNU General Public License v3.0 8 | 9 | Lets you link to files hosted on Amazon s3 so that you can serve secure, expiring download links. 10 | 11 | == Installation == 12 | 13 | To install this plugin, please refer to the guide here: [http://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation](http://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation) 14 | 15 | = Usage = 16 | 17 | After installing, head to Downloads > Settings, and inside the "Amazon S3" tab fill in your Amazon S3 Keys. You can get the keys from https://console.aws.amazon.com/iam/home?#security_credential. 18 | 19 | Once that is done, when you create or edit a download you can either use the "amazon s3 object" button to generate an S3 link, or add the link manually. 20 | 21 | The link format should be: http://BUCKETNAME.s3.amazonaws.com/OBJECTPATH You don't need to add in the query string for keys etc, this will be done for you when serving the download. 22 | 23 | When a download link is used containing the s3.amazonaws.com domain, the plugin will generate the correct amazon URL using your keys, and redirect the user. 24 | 25 | = Support Policy = 26 | 27 | I will happily patch any confirmed bugs with this plugin, however, I will not offer support for: 28 | 29 | 1. Customisations of this plugin or any plugins it relies upon 30 | 2. Conflicts with "premium" themes from ThemeForest and similar marketplaces (due to bad practice and not being readily available to test) 31 | 3. CSS Styling (this is customisation work) 32 | 33 | If you need help with customisation you will need to find and hire a developer capable of making the changes. 34 | 35 | == Changelog == 36 | 37 | = 1.0.6 = 38 | * Moved JS to separate file. 39 | * Use new logger object. 40 | * Use new DLM extension update. 41 | 42 | = 1.0.5 = 43 | * Append Signature without WP encoding. 44 | 45 | = 1.0.4 = 46 | * Fix for when bucket names contain periods 47 | 48 | = 1.0.3 = 49 | * Fix for different s3 formats 50 | 51 | = 1.0.2 = 52 | * Tweak bucket name detection 53 | 54 | = 1.0.1 = 55 | * Made Amazon check more generic 56 | 57 | = 1.0.0 = 58 | * First release. -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/js/themes.js: -------------------------------------------------------------------------------- 1 | (function(a){a(function(){var k=a("#wp_rp_plugin_static_base_url").val();a("#wp_rp_static_base_url").val();var l=a("#wp_rp_json_url").val(),m=a("#wp_rp_version").val(),n={mobile:{wrap:a("#wp_rp_mobile_theme_options_wrap"),theme_area:a("#wp_rp_mobile_theme_area"),current_theme:a("#wp_rp_mobile_theme_selected").val()},desktop:{wrap:a("#wp_rp_desktop_theme_options_wrap"),theme_area:a("#wp_rp_desktop_theme_area"),current_theme:a("#wp_rp_desktop_theme_selected").val()}},h={mobile:[{name:"Modern",location:"m-modern.css"}, 2 | {name:"Infinite Stream (experimental)",location:"m-stream.css"},{name:"Plain (your own css)",location:"m-plain.css"}],desktop:[{name:"Momma",location:"momma.css"},{name:"Modern",location:"modern.css"},{name:"Vertical (Large)",location:"vertical.css"},{name:"Vertical (Medium)",location:"vertical-m.css"},{name:"Vertical (Small)",location:"vertical-s.css"},{name:"Pinterest Inspired",location:"pinterest.css"},{name:"Two Columns",location:"twocolumns.css"},{name:"Plain (your own css)",location:"plain.css"}]}, 3 | i=function(){a.each(n,function(b,d){var e=d.wrap.find("div.theme-list"),f=d.wrap.find("div.theme-screenshot"),g=function(b){if(b.val()){var b=k+"img/themes/"+b.val().replace(/\.css$/,".jpg"),c=f.find("img");if(c.length){if(c.attr("src")===b)return}else c=a(""),f.html(c);c.attr("src",b)}else f.html("")};e.empty();a.each(h[b],function(a,c){"custom.css"!=c.location&&e.append('
    ")});e.on("hover","label.theme-label",function(){g(a("input",this))});e.on("mouseleave",function(){g(e.find("input:checked"))});g(e.find("input:checked"));d.theme_area.show()})},j=!1;window.wp_rp_themes_cb=function(b){if(b&&b.themes&&(h=b.themes))j=!0,i();j&&a("#wp_rp_theme_options_wrap").show()};a("#wp_rp_enable_themes:checked").length&&(i(),a("#wp_rp_theme_options_wrap").show());a("#wp_rp_enable_themes").change(function(){if(a("#wp_rp_enable_themes:checked").length){var b= 5 | document.createElement("script"),d=document.getElementsByTagName("body").item(0);b.type="text/javascript";b.src=l+"themes2.js?plv="+m;d.appendChild(b)}else a("#wp_rp_theme_options_wrap").hide()})})})(jQuery); 6 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/BulkChangeInfo.php: -------------------------------------------------------------------------------- 1 | changeInfos = $changeInfos; 19 | $this->count = $this->countUniqueChanges($changeInfos); 20 | } 21 | 22 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 23 | throw new NotSupportedException("Building bulk changeinfo from commit message is not supported"); 24 | } 25 | 26 | public function getCommitMessage() { 27 | throw new NotSupportedException("Commit message is created in ChangeInfoEnvelope from original objects"); 28 | } 29 | 30 | public function getChangeInfos() { 31 | return $this->changeInfos; 32 | } 33 | 34 | public function getChangeDescription() { 35 | if ($this->count === 1) { 36 | return $this->changeInfos[0]->getChangeDescription(); 37 | } 38 | 39 | return sprintf("%s %d %s", 40 | Strings::capitalize(StringUtils::verbToPastTense($this->getAction())), 41 | $this->count, 42 | StringUtils::pluralize($this->getEntityName())); 43 | } 44 | 45 | public function getAction() { 46 | return $this->changeInfos[0]->getAction(); 47 | } 48 | 49 | public function getEntityName() { 50 | return $this->changeInfos[0]->getEntityName(); 51 | } 52 | 53 | private function countUniqueChanges($changeInfos) { 54 | if (!($changeInfos[0] instanceof EntityChangeInfo)) { 55 | return count($changeInfos); 56 | } 57 | 58 | $numberOfUniqueChanges = 0; 59 | $uniqueEntities = array(); 60 | 61 | foreach ($changeInfos as $changeInfo) { 62 | if (!in_array($changeInfo->getEntityId(), $uniqueEntities)) { 63 | $numberOfUniqueChanges += 1; 64 | $uniqueEntities[] = $changeInfo->getEntityId(); 65 | } 66 | } 67 | 68 | return $numberOfUniqueChanges; 69 | } 70 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/ThemeChangeInfo.php: -------------------------------------------------------------------------------- 1 | themeId = $themeId; 21 | $this->action = $action; 22 | 23 | if ($themeName == null) { 24 | $themes = wp_get_themes(); 25 | $themeName = $themes[$themeId]->name; 26 | } 27 | 28 | $this->themeName = $themeName; 29 | } 30 | 31 | public function getEntityName() { 32 | return self::$OBJECT_TYPE; 33 | } 34 | 35 | public function getAction() { 36 | return $this->action; 37 | } 38 | 39 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 40 | $actionTag = $commitMessage->getVersionPressTag(TrackedChangeInfo::ACTION_TAG); 41 | $themeName = $commitMessage->getVersionPressTag(self::THEME_NAME_TAG); 42 | list(, $action, $themeId) = explode("/", $actionTag, 3); 43 | return new self($themeId, $action, $themeName); 44 | } 45 | 46 | public function getChangeDescription() { 47 | 48 | if ($this->action === 'switch') { 49 | return "Theme switched to '{$this->themeName}'"; 50 | } 51 | 52 | return Strings::capitalize(StringUtils::verbToPastTense($this->action)) . " theme '{$this->themeName}'"; 53 | } 54 | 55 | public function getChangedFiles() { 56 | $themeChange = array("type" => "path", "path" => $path = WP_CONTENT_DIR . "/themes/" . $this->themeId . "/*"); 57 | $optionChange = array("type" => "storage-file", "entity" => "option", "id" => "", "parent-id" => ""); 58 | return array($themeChange, $optionChange); 59 | } 60 | 61 | protected function getActionTagValue() { 62 | return "{$this->getEntityName()}/{$this->getAction()}/" . $this->themeId; 63 | } 64 | 65 | public function getCustomTags() { 66 | return array( 67 | self::THEME_NAME_TAG => $this->themeName 68 | ); 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Synchronizers/OptionsSynchronizer.php: -------------------------------------------------------------------------------- 1 | optionsStorage = $optionsStorage; 23 | $this->database = $wpdb; 24 | $this->urlReplacer = $urlReplacer; 25 | $this->tableName = $dbSchema->getPrefixedTableName('option'); 26 | } 27 | 28 | function synchronize($task, $entitiesToSynchronize = null) { 29 | $options = $this->optionsStorage->loadAll(); 30 | if (count($options) == 0) return array(); 31 | 32 | $syncQuery = "INSERT INTO {$this->tableName} (option_name, option_value, autoload) VALUES "; 33 | foreach ($options as $optionName => $values) { 34 | $values = $this->urlReplacer->restore($values); 35 | if (!isset($values['autoload'])) $values['autoload'] = 'yes'; 36 | $syncQuery .= "(\"$optionName\", \"" . $this->database->_real_escape($values['option_value']) . "\", \"$values[autoload]\"),"; 37 | } 38 | 39 | $syncQuery[mb_strlen($syncQuery) - 1] = " "; 40 | $syncQuery .= " ON DUPLICATE KEY UPDATE option_value = VALUES(option_value), autoload = VALUES(autoload);"; 41 | 42 | $this->database->query($syncQuery); 43 | 44 | $ignoredOptionNames = array_map(function ($option) { 45 | return "\"" . $option['option_name'] . "\""; 46 | }, $options); 47 | 48 | $ignoredOptionNames[] = '"cron"'; 49 | $ignoredOptionNames[] = '"siteurl"'; 50 | $ignoredOptionNames[] = '"home"'; 51 | $ignoredOptionNames[] = '"db_upgraded"'; 52 | $ignoredOptionNames[] = '"auto_updater.lock"'; 53 | 54 | $deleteSql = "DELETE FROM {$this->tableName} WHERE option_name NOT IN(" . join(", ", $ignoredOptionNames) . ") OR option_name NOT LIKE '_%'"; 55 | $this->database->query($deleteSql); 56 | return array(); 57 | } 58 | 59 | } 60 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/css/connect.css: -------------------------------------------------------------------------------- 1 | #wp-rp-message {background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #e4f6f9), color-stop(1, #bee8f1) ); 2 | background:-moz-linear-gradient( center top, #e4f6f9 5%, #bee8f1 100% ); 3 | filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e4f6f9', endColorstr='#bee8f1'); 4 | background-color:#e4f6f9; 5 | -moz-border-radius:6px; 6 | -webkit-border-radius:6px; 7 | border-radius:6px; 8 | border:1px solid #cecece; 9 | color:#777777; 10 | font-family:arial; 11 | font-size:15px; 12 | font-weight:bold; 13 | padding:0; 14 | text-decoration:none; 15 | overflow: hidden; 16 | } 17 | #wp-rp-message #wp-rp-dismiss {} 18 | #wp-rp-message #wp-rp-dismiss #wp-rp-close-button {} 19 | #wp-rp-message #wp-rp-wrap-container {min-width: 790px;padding: 6px 24px;border-bottom: 1px solid #FFF;} 20 | #wp-rp-message #wp-rp-wrap-container #wp-rp-connect-wrap {margin: 2em 0 0 0;display: inline-block;vertical-align: top;} 21 | #wp-rp-message #wp-rp-wrap-container #wp-rp-connect-wrap #wp-rp-login {text-shadow:1px 1px #a05515;font-size:1.5em;padding:20px 60px;-moz-box-shadow:inset 0 1px 0 0 #ffaf65;-webkit-box-shadow:inset 0 1px 0 0 #ffaf65;box-shadow:inset 0 1px 0 0 #ffaf65;background:-webkit-gradient(linear,left top,left bottom,color-stop(0.05,#f79124),color-stop(1,#f57b1e));background:-moz-linear-gradient(center top,#f79124 5%,#f57b1e 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f79124', endColorstr='#f57b1e');background-color:#f79124;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;border:1px solid #e77001;display:inline-block;color:#fff;text-decoration:none;} 22 | #wp-rp-message #wp-rp-wrap-container #wp-rp-connect-wrap #wp-rp-login:hover {background:-webkit-gradient(linear,left top,left bottom,color-stop(0.05,#f57b1e),color-stop(1,#f79124));background:-moz-linear-gradient(center top,#f57b1e 5%,#f79124 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f57b1e',endColorstr='#f79124');background-color:#f57b1e;text-decoration:none;} 23 | #wp-rp-message #wp-rp-wrap-container #wp-rp-text-container {display: inline-block;margin: 1.2em 0 1em 2em;color: #000;font-size: 1.5em;} 24 | #wp-rp-message #wp-rp-wrap-container #wp-rp-text-container h4 {margin: 0.5em 0 0em 0;} 25 | #wp-rp-message #wp-rp-bottom-container {min-width: 1000px;padding: 6px 24px;} 26 | #wp-rp-message #wp-rp-bottom-container p {color:#000;font-weight:100;} 27 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "xyu/heroku-wp", 3 | "description": "A template for installing and running WordPress on Heroku", 4 | "license": "MIT", 5 | "require-dev": { 6 | "heroku/heroku-buildpack-php": "dev-master" 7 | }, 8 | "require": { 9 | "hhvm": "~3.2", 10 | "WordPress/WordPress": "*", 11 | "wpackagist-plugin/wpro": "~1", 12 | "wpackagist-plugin/sendgrid-email-delivery-simplified": "~1", 13 | "wpackagist-plugin/authy-two-factor-authentication": "~2", 14 | "wpackagist-plugin/akismet": "~2", 15 | "wpackagist-plugin/all-in-one-seo-pack": "~2", 16 | "wpackagist-plugin/contact-form-7": "~3.5", 17 | "wpackagist-plugin/download-monitor": "~1.6", 18 | "wpackagist-plugin/wp-csv": "~1", 19 | "wpackagist-plugin/swift-mailer": "~4", 20 | "wpackagist-plugin/public-post-preview": "~2.4", 21 | "wpackagist-plugin/wp-author-box-lite": "~1.0.4", 22 | "wpackagist-plugin/disqus-comment-system": "~2.83", 23 | "wpackagist-plugin/wp-markdown": "1.5.1" 24 | }, 25 | "repositories": [ 26 | { 27 | "type": "package", 28 | "package": { 29 | "name": "WordPress/WordPress", 30 | "version": "4.1", 31 | "dist": { 32 | "type": "zip", 33 | "url": "https://github.com/WordPress/WordPress/archive/4.1.zip" 34 | } 35 | } 36 | }, 37 | { 38 | "type":"composer", 39 | "url":"http://wpackagist.org" 40 | } 41 | ], 42 | "extra": { 43 | "installer-paths": { 44 | "vendor/WordPress/WordPress/wp-content/mu-plugins/{$name}/": [ "type:wordpress-muplugin" ], 45 | "vendor/WordPress/WordPress/wp-content/plugins/{$name}/": [ "type:wordpress-plugin" ], 46 | "vendor/WordPress/WordPress/wp-content/themes/{$name}/": [ "type:wordpress-theme" ] 47 | } 48 | }, 49 | "scripts": { 50 | "post-install-cmd": [ 51 | "rm -rf tmp/public.building tmp/public.old", 52 | "mkdir -p tmp/public.building", 53 | "cp -R vendor/WordPress/WordPress/* tmp/public.building", 54 | "cp -R public/* tmp/public.building", 55 | "touch public.built", 56 | "mv public.built tmp/public.old && mv tmp/public.building public.built", 57 | "rm -rf tmp/public.old" 58 | ] 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/vertical-s.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap .related_post_title { 2 | clear: both; 3 | padding: 0 !important; 4 | margin: 0 !important; 5 | } 6 | div.wp_rp_content { 7 | display: inline-block !important; 8 | } 9 | 10 | div.wp_rp_footer { 11 | text-align: right !important; 12 | overflow: hidden !important; 13 | } 14 | div.wp_rp_footer a { 15 | color: #999 !important; 16 | font-size: 11px !important; 17 | text-decoration: none !important; 18 | display: inline-block !important; 19 | } 20 | div.wp_rp_footer a.wp_rp_edit { 21 | color: #fff !important; 22 | font-size: 12px !important; 23 | text-decoration: underline !important; 24 | font-weight: bold !important; 25 | background: #f79124 !important; 26 | border-radius: 2px !important; 27 | padding: 3px 6px; 28 | } 29 | ul.related_post { 30 | display: inline-block !important; 31 | position: relative !important; 32 | margin: 0 !important; 33 | padding: 0 !important; 34 | } 35 | ul.related_post li { 36 | position: relative !important; 37 | display: inline-block !important; 38 | vertical-align: top !important; 39 | zoom: 1 !important; 40 | *display: inline !important; 41 | width: 75px !important; 42 | margin: 10px 10px 10px 0px !important; 43 | padding: 0 !important; 44 | background: none !important; 45 | } 46 | ul.related_post li a { 47 | position: relative !important; 48 | display: block !important; 49 | font-size: 11px !important; 50 | line-height: 1.5em !important; 51 | text-decoration: none !important; 52 | margin-bottom: 5px !important; 53 | text-indent: 0 !important; 54 | } 55 | ul.related_post li img { 56 | display: block !important; 57 | width: 75px !important; 58 | height: 75px !important; 59 | max-width: 100% !important; 60 | margin: 0 !important; 61 | padding: 0 !important; 62 | background: none !important; 63 | border: none !important; 64 | 65 | border-radius: 3px !important; 66 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 67 | } 68 | 69 | ul.related_post li a img.wp_rp_santa_hat { 70 | display: none !important; 71 | } 72 | 73 | ul.related_post li small { 74 | font-size: 80%; 75 | } 76 | 77 | @media screen and (max-width: 480px) { 78 | ul.related_post li { 79 | display: inline-block !important; 80 | width: 75px !important; 81 | clear: both !important; 82 | } 83 | ul.related_post li a:nth-child(1) { 84 | float: left !important; 85 | } 86 | ul.related_post li a:nth-child(2) { 87 | font-size: 14px !important; 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/vertical.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap .related_post_title { 2 | clear: both; 3 | padding: 0 !important; 4 | margin: 0 !important; 5 | } 6 | div.wp_rp_content { 7 | display: inline-block !important; 8 | } 9 | 10 | div.wp_rp_footer { 11 | text-align: right !important; 12 | overflow: hidden !important; 13 | } 14 | div.wp_rp_footer a { 15 | color: #999 !important; 16 | font-size: 11px !important; 17 | text-decoration: none !important; 18 | display: inline-block !important; 19 | } 20 | div.wp_rp_footer a.wp_rp_edit { 21 | color: #fff !important; 22 | font-size: 12px !important; 23 | text-decoration: underline !important; 24 | font-weight: bold !important; 25 | background: #f79124 !important; 26 | border-radius: 2px !important; 27 | padding: 3px 6px; 28 | } 29 | ul.related_post { 30 | display: inline-block !important; 31 | position: relative !important; 32 | margin: 0 !important; 33 | padding: 0 !important; 34 | } 35 | ul.related_post li { 36 | position: relative !important; 37 | display: inline-block !important; 38 | vertical-align: top !important; 39 | zoom: 1 !important; 40 | *display: inline !important; 41 | width: 150px !important; 42 | margin: 10px 10px 10px 0px !important; 43 | padding: 0 !important; 44 | background: none !important; 45 | } 46 | ul.related_post li a { 47 | position: relative !important; 48 | display: block !important; 49 | font-size: 13px !important; 50 | line-height: 1.6em !important; 51 | text-decoration: none !important; 52 | margin-bottom: 5px !important; 53 | text-indent: 0 !important; 54 | } 55 | ul.related_post li img { 56 | display: block !important; 57 | width: 150px !important; 58 | height: 150px !important; 59 | max-width: 100% !important; 60 | margin: 0 !important; 61 | padding: 0 !important; 62 | background: none !important; 63 | border: none !important; 64 | 65 | border-radius: 3px !important; 66 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 67 | } 68 | 69 | ul.related_post li a img.wp_rp_santa_hat { 70 | display: none !important; 71 | } 72 | 73 | ul.related_post li small { 74 | font-size: 80%; 75 | } 76 | 77 | @media screen and (max-width: 480px) { 78 | ul.related_post li { 79 | display: inline-block !important; 80 | width: 150px !important; 81 | clear: both !important; 82 | } 83 | ul.related_post li a:nth-child(1) { 84 | float: left !important; 85 | } 86 | ul.related_post li a:nth-child(2) { 87 | font-size: 14px !important; 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/twocolumns.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap { 2 | clear: both; 3 | } 4 | 5 | ul.related_post { 6 | margin: 0 0 18px 0 !important; 7 | padding: 0 !important; 8 | -moz-column-count: 2 !important; 9 | -moz-column-gap: 40px !important; 10 | -moz-column-rule: 1px solid #ccc !important; 11 | -webkit-column-count: 2 !important; 12 | -webkit-column-gap: 40px !important; 13 | -webkit-column-rule: 1px solid #ccc !important; 14 | column-count: 2 !important; 15 | column-gap: 40px !important; 16 | column-rule: 1px solid #ccc !important; 17 | } 18 | ul.related_post li { 19 | overflow: hidden !important; 20 | list-style: none !important; 21 | margin: 0 !important; 22 | padding: 0 0 10px 0 !important; 23 | -moz-column-break-inside: avoid !important; 24 | -webkit-column-break-inside: avoid !important; 25 | break-inside: avoid-column !important; 26 | } 27 | ul.related_post li img { 28 | display: block !important; 29 | max-width: 100% !important; 30 | margin: 0 !important; 31 | padding: 0 !important; 32 | background: none !important; 33 | border: none !important; 34 | float: none !important; 35 | 36 | border-radius: 3px !important; 37 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 38 | } 39 | ul.related_post li a.wp_rp_thumbnail { 40 | display: block !important; 41 | width: 75px !important; 42 | height: 75px !important; 43 | overflow: hidden; 44 | float: left !important; 45 | margin: 0 10px 0 0 !important; 46 | padding: 0 !important; 47 | } 48 | div.wp_rp_footer { 49 | text-align: right !important; 50 | overflow: hidden !important; 51 | } 52 | div.wp_rp_footer a { 53 | color: #999 !important; 54 | font-size: 11px !important; 55 | text-decoration: none !important; 56 | display: inline-block !important; 57 | } 58 | div.wp_rp_footer a.wp_rp_edit { 59 | color: #fff !important; 60 | font-size: 12px !important; 61 | text-decoration: underline !important; 62 | font-weight: bold !important; 63 | background: #f79124 !important; 64 | border-radius: 2px !important; 65 | padding: 3px 6px; 66 | } 67 | @media screen and (max-width: 480px) { 68 | ul.related_post { 69 | -moz-column-count: auto !important; 70 | -moz-column-gap: normal !important; 71 | -moz-column-rule: none !important; 72 | -webkit-column-count:auto !important; 73 | -webkit-column-gap: normal !important; 74 | -webkit-column-rule: none !important; 75 | column-count: auto !important; 76 | column-gap: normal !important; 77 | column-rule: none !important; 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/public/icons/fonts/icomoon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Generated by IcoMoon 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Storages/CommentStorage.php: -------------------------------------------------------------------------------- 1 | database = $wpdb; 17 | } 18 | 19 | protected function createChangeInfo($oldEntity, $newEntity, $action = null) { 20 | 21 | if ($action === 'edit') { 22 | $diff = EntityUtils::getDiff($oldEntity, $newEntity); 23 | } 24 | 25 | if (isset($diff['comment_approved'])) { 26 | if ( 27 | ($oldEntity['comment_approved'] === 'trash' && $newEntity['comment_approved'] === 'post-trashed') || 28 | ($oldEntity['comment_approved'] === 'post-trashed' && $newEntity['comment_approved'] === 'trash') 29 | ) { 30 | $action = 'edit'; 31 | } elseif ($diff['comment_approved'] === 'trash') { 32 | $action = 'trash'; 33 | } elseif ($oldEntity['comment_approved'] === 'trash') { 34 | $action = 'untrash'; 35 | } elseif ($diff['comment_approved'] === 'spam') { 36 | $action = 'spam'; 37 | } elseif ($oldEntity['comment_approved'] === 'spam') { 38 | $action = 'unspam'; 39 | } elseif ($oldEntity['comment_approved'] == 0 && $newEntity['comment_approved'] == 1) { 40 | $action = 'approve'; 41 | } elseif ($oldEntity['comment_approved'] == 1 && $newEntity['comment_approved'] == 0) { 42 | $action = 'unapprove'; 43 | } 44 | } 45 | 46 | if ($action === 'create' && $newEntity['comment_approved'] == 0) { 47 | $action = 'create-pending'; 48 | } 49 | 50 | $author = $newEntity["comment_author"]; 51 | 52 | $postTable = $this->database->prefix . 'posts'; 53 | $vpIdTable = $this->database->prefix . 'vp_id'; 54 | $result = $this->database->get_row("SELECT post_title FROM {$postTable} JOIN {$vpIdTable} ON {$postTable}.ID = {$vpIdTable}.id WHERE vp_id = UNHEX('$newEntity[vp_comment_post_ID]')"); 55 | 56 | $postTitle = $result->post_title; 57 | 58 | return new CommentChangeInfo($action, $newEntity["vp_id"], $author, $postTitle); 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/vertical-m.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap .related_post_title { 2 | clear: both; 3 | padding: 0 !important; 4 | margin: 0 !important; 5 | } 6 | div.wp_rp_content { 7 | display: inline-block !important; 8 | } 9 | 10 | div.wp_rp_footer { 11 | text-align: right !important; 12 | overflow: hidden !important; 13 | } 14 | div.wp_rp_footer a { 15 | display: inline-block !important; 16 | color: #999 !important; 17 | font-size: 11px !important; 18 | text-decoration: none !important; 19 | } 20 | div.wp_rp_footer a.wp_rp_edit { 21 | color: #fff !important; 22 | font-size: 12px !important; 23 | text-decoration: underline !important; 24 | font-weight: bold !important; 25 | background: #f79124 !important; 26 | border-radius: 2px !important; 27 | padding: 3px 6px; 28 | } 29 | ul.related_post { 30 | display: inline-block !important; 31 | position: relative !important; 32 | margin: 0 !important; 33 | padding: 0 !important; 34 | } 35 | ul.related_post li { 36 | position: relative !important; 37 | display: inline-block !important; 38 | vertical-align: top !important; 39 | zoom: 1 !important; 40 | *display: inline !important; 41 | width: 100px !important; 42 | margin: 10px 10px 10px 0px !important; 43 | padding: 0 !important; 44 | background: none !important; 45 | } 46 | ul.related_post li a { 47 | position: relative !important; 48 | display: block !important; 49 | font-size: 12px !important; 50 | line-height: 1.5em !important; 51 | text-decoration: none !important; 52 | margin-bottom: 5px !important; 53 | text-indent: 0 !important; 54 | } 55 | ul.related_post li img { 56 | display: block !important; 57 | width: 100px !important; 58 | height: 100px !important; 59 | max-width: 100% !important; 60 | margin: 0 !important; 61 | padding: 0 !important; 62 | background: none !important; 63 | border: none !important; 64 | 65 | border-radius: 3px !important; 66 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 67 | } 68 | 69 | ul.related_post li a img.wp_rp_santa_hat { 70 | display: none !important; 71 | } 72 | 73 | ul.related_post li small { 74 | font-size: 80%; 75 | } 76 | 77 | @media screen and (max-width: 480px) { 78 | ul.related_post li { 79 | display: inline-block !important; 80 | width: 100px !important; 81 | clear: both !important; 82 | } 83 | ul.related_post li a:nth-child(1) { 84 | float: left !important; 85 | } 86 | ul.related_post li a:nth-child(2) { 87 | font-size: 14px !important; 88 | } 89 | ul.related_post li img { 90 | width: 100px !important; 91 | height: 100px !important; 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/BugReporter.php: -------------------------------------------------------------------------------- 1 | endPoint = $endPoint; 13 | } 14 | 15 | public function reportBug($email, $description) { 16 | $time = date('YmdHis'); 17 | $bugReportDir = VERSIONPRESS_PLUGIN_DIR . '/bug-report-' . $time; 18 | $zipFile = $bugReportDir . '.zip'; 19 | 20 | $this->prepareBugReport($bugReportDir, $zipFile); 21 | $statusCode = $this->sendBugReport($email, $description, $zipFile); 22 | $this->clean($bugReportDir, $zipFile); 23 | 24 | return $statusCode === 200; 25 | } 26 | 27 | private function savePhpinfo($dir, $filename = 'phpinfo.html') { 28 | $info = $this->getPhpinfo(); 29 | file_put_contents($dir . '/' . $filename, $info); 30 | } 31 | 32 | private function getPhpinfo() { 33 | ob_start(); 34 | phpinfo(); 35 | $info = ob_get_contents(); 36 | ob_end_clean(); 37 | return $info; 38 | } 39 | 40 | private function clean($bugReportDir, $zipFile) { 41 | FileSystem::remove($bugReportDir); 42 | FileSystem::remove($zipFile); 43 | } 44 | 45 | private function sendBugReport($email, $description, $zipFile) { 46 | $postData = array('email' => $email, 'description' => $description, 'zip' => new CURLFile($zipFile)); 47 | $ch = curl_init(); 48 | curl_setopt($ch, CURLOPT_URL, $this->endPoint); 49 | curl_setopt($ch, CURLOPT_POST, 1); 50 | curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); 51 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 52 | curl_exec($ch); 53 | $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 54 | curl_close($ch); 55 | 56 | return $statusCode; 57 | } 58 | 59 | private function prepareBugReport($bugReportDir, $zipFile) { 60 | FileSystem::mkdir($bugReportDir); 61 | FileSystem::copyDir(VERSIONPRESS_PLUGIN_DIR . '/log', $bugReportDir . '/log'); 62 | $this->savePhpinfo($bugReportDir); 63 | $this->saveWordPressSpecificInfo($bugReportDir); 64 | Zip::zipDirectory($bugReportDir, $zipFile); 65 | } 66 | 67 | private function saveWordPressSpecificInfo($bugReportDir) { 68 | $info = SystemInfo::getWordPressInfo(); 69 | $serializedInfo = var_export($info, true); 70 | file_put_contents($bugReportDir . '/info.ini', $serializedInfo); 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/system-info.php: -------------------------------------------------------------------------------- 1 | '; 27 | echo htmlspecialchars(var_export($array, true)); 28 | echo ''; 29 | 30 | break; 31 | 32 | case 'tc': 33 | \Tracy\Debugger::dump($array); 34 | break; 35 | 36 | } 37 | 38 | } 39 | 40 | ?> 41 | 42 | 43 | 44 | 48 | 49 | 63 | 64 |

    System info

    65 | 66 |

    Quick overview of this WordPress installation for VersionPress purposes.

    67 | 68 |
    69 | Format: 70 | var_export | 71 | tracy 72 | 73 |
    74 | 75 | Jump to: 76 | Git info | 77 | WordPress info | 78 | System / PHP info 79 | 80 |
    81 | 82 |

    Quick summary

    83 | 84 | 85 |

    Git

    86 | 87 | 88 |

    WordPress

    89 | 90 | 91 |

    Server environment / PHP info

    92 | 93 | 94 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/CommentChangeInfo.php: -------------------------------------------------------------------------------- 1 | commentAuthor = $commentAuthor; 18 | $this->commentedPost = $commentedPost; 19 | } 20 | 21 | function getChangeDescription() { 22 | switch ($this->getAction()) { 23 | case "create": 24 | return "New comment for post '{$this->commentedPost}'"; 25 | case "delete": 26 | return "Deleted comment for post '{$this->commentedPost}'"; 27 | case "trash": 28 | return "Comment for post '{$this->commentedPost}' moved to trash"; 29 | case "untrash": 30 | return "Comment for post '{$this->commentedPost}' moved from trash"; 31 | case "spam": 32 | return "Comment for post '{$this->commentedPost}' marked as spam"; 33 | case "unspam": 34 | return "Comment for post '{$this->commentedPost}' marked as not spam"; 35 | case "create-pending": 36 | return "New comment for post '{$this->commentedPost}' (pending approval)"; 37 | case "approve": 38 | return "Approved comment for post '{$this->commentedPost}'"; 39 | case "unapprove": 40 | return "Unapproved comment for post '{$this->commentedPost}'"; 41 | } 42 | 43 | return "Edited comment for post '{$this->commentedPost}'"; 44 | } 45 | 46 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 47 | $tags = $commitMessage->getVersionPressTags(); 48 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 49 | $commentAuthor = $tags[self::AUTHOR_TAG]; 50 | $commentedPost = $tags[self::POST_TITLE_TAG]; 51 | list(, $action, $entityId) = explode("/", $actionTag, 3); 52 | return new self($action, $entityId, $commentAuthor, $commentedPost); 53 | } 54 | 55 | public function getCustomTags() { 56 | return array( 57 | self::AUTHOR_TAG => $this->commentAuthor, 58 | self::POST_TITLE_TAG => $this->commentedPost 59 | ); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Utils/StringUtils.php: -------------------------------------------------------------------------------- 1 | "$1zes", 20 | '/^(ox)$/i' => "$1en", 21 | '/([m|l])ouse$/i' => "$1ice", 22 | '/(matr|vert|ind)ix|ex$/i' => "$1ices", 23 | '/(x|ch|ss|sh)$/i' => "$1es", 24 | '/([^aeiouy]|qu)y$/i' => "$1ies", 25 | '/(hive)$/i' => "$1s", 26 | '/(?:([^f])fe|([lr])f)$/i' => "$1$2ves", 27 | '/(shea|lea|loa|thie)f$/i' => "$1ves", 28 | '/sis$/i' => "ses", 29 | '/([ti])um$/i' => "$1a", 30 | '/(tomat|potat|ech|her|vet)o$/i' => "$1oes", 31 | '/(bu)s$/i' => "$1ses", 32 | '/(alias)$/i' => "$1es", 33 | '/(octop)us$/i' => "$1i", 34 | '/(ax|test)is$/i' => "$1es", 35 | '/(us)$/i' => "$1es", 36 | '/s$/i' => "s", 37 | '/$/' => "s" 38 | ); 39 | 40 | $irregular = array( 41 | 'move' => 'moves', 42 | 'foot' => 'feet', 43 | 'goose' => 'geese', 44 | 'sex' => 'sexes', 45 | 'child' => 'children', 46 | 'man' => 'men', 47 | 'tooth' => 'teeth', 48 | 'person' => 'people', 49 | 'valve' => 'valves' 50 | ); 51 | 52 | $uncountable = array( 53 | 'sheep', 54 | 'fish', 55 | 'deer', 56 | 'series', 57 | 'species', 58 | 'money', 59 | 'rice', 60 | 'information', 61 | 'equipment' 62 | ); 63 | 64 | if (in_array(strtolower($string), $uncountable)) 65 | return $string; 66 | 67 | foreach ($irregular as $pattern => $result) { 68 | $pattern = '/' . $pattern . '$/i'; 69 | 70 | if (preg_match($pattern, $string)) 71 | return preg_replace($pattern, $result, $string); 72 | } 73 | 74 | foreach ($plural as $pattern => $result) { 75 | if (preg_match($pattern, $string)) 76 | return preg_replace($pattern, $result, $string); 77 | } 78 | 79 | return $string; 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/VersionPressChangeInfo.php: -------------------------------------------------------------------------------- 1 | action = $action; 15 | $this->versionPressVersion = $versionPressVersion; 16 | } 17 | 18 | public function getEntityName() { 19 | return "versionpress"; 20 | } 21 | 22 | public function getAction() { 23 | return $this->action; 24 | } 25 | 26 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 27 | $actionTag = $commitMessage->getVersionPressTag(TrackedChangeInfo::ACTION_TAG); 28 | list(, $action, $versionPressVersion) = array_pad(explode("/", $actionTag, 3), 3, ""); 29 | return new self($action, $versionPressVersion); 30 | } 31 | 32 | public function getChangeDescription() { 33 | 34 | switch ($this->action) { 35 | 36 | case "install": 37 | 38 | return "Installed VersionPress"; 39 | 40 | case "activate": 41 | return "Activated VersionPress " . $this->versionPressVersion; 42 | 43 | case "deactivate": 44 | return "Deactivated VersionPress"; 45 | 46 | default: 47 | 48 | return Strings::capitalize(StringUtils::verbToPastTense($this->action)) . " VersionPress"; 49 | 50 | } 51 | 52 | } 53 | 54 | protected function getActionTagValue() { 55 | $actionTag = "versionpress/$this->action"; 56 | if ($this->versionPressVersion) { 57 | $actionTag .= "/" . $this->versionPressVersion; 58 | } 59 | return $actionTag; 60 | } 61 | 62 | public function getCustomTags() { 63 | return array(); 64 | } 65 | 66 | public function getChangedFiles() { 67 | switch ($this->action) { 68 | case "deactivate": 69 | return array( 70 | array("type" => "path", "path" => VERSIONPRESS_MIRRORING_DIR . "/*"), 71 | array("type" => "path", "path" => ABSPATH . WPINC . "/wp-db.php"), 72 | array("type" => "path", "path" => ABSPATH . WPINC . "/wp-db.php.original"), 73 | ); 74 | default: 75 | return array(array("type" => "path", "path" => "*")); 76 | } 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/Initialization/ReplacerMethods.src.php: -------------------------------------------------------------------------------- 1 | resolve(\VersionPress\DI\VersionPressServices::WPDB_MIRROR_BRIDGE); 12 | 13 | $r = $this->__wp_insert($table, $data, $format); 14 | 15 | $this->vp_backup_fields(); 16 | $wpdbMirrorBridge->insert($table, $data); 17 | $this->vp_restore_fields(); 18 | 19 | return $r; 20 | } 21 | 22 | public function update( $table, $data, $where, $format = null, $where_format = null ) { 23 | global $versionPressContainer; 24 | 25 | 26 | $wpdbMirrorBridge = $versionPressContainer->resolve(\VersionPress\DI\VersionPressServices::WPDB_MIRROR_BRIDGE); 27 | 28 | $r = $this->__wp_update($table, $data, $where, $format, $where_format); 29 | 30 | $this->vp_backup_fields(); 31 | $wpdbMirrorBridge->update($table, $data, $where); 32 | $this->vp_restore_fields(); 33 | 34 | return $r; 35 | } 36 | 37 | public function delete( $table, $where, $where_format = null ) { 38 | global $versionPressContainer; 39 | 40 | 41 | $wpdbMirrorBridge = $versionPressContainer->resolve(\VersionPress\DI\VersionPressServices::WPDB_MIRROR_BRIDGE); 42 | 43 | $r = $this->__wp_delete($table, $where, $where_format); 44 | 45 | $this->vp_backup_fields(); 46 | $wpdbMirrorBridge->delete($table, $where); 47 | $this->vp_restore_fields(); 48 | 49 | return $r; 50 | } 51 | 52 | private $vp_field_backup = array(); 53 | 54 | private function vp_backup_fields() { 55 | $this->vp_field_backup = array( 56 | "last_error" => $this->last_error, 57 | "last_query" => $this->last_query, 58 | "last_result" => $this->last_result, 59 | "rows_affected" => $this->rows_affected, 60 | "num_rows" => $this->num_rows, 61 | "insert_id" => $this->insert_id, 62 | ); 63 | } 64 | 65 | private function vp_restore_fields() { 66 | $this->last_error = $this->vp_field_backup["last_error"]; 67 | $this->last_query = $this->vp_field_backup["last_query"]; 68 | $this->last_result = $this->vp_field_backup["last_result"]; 69 | $this->rows_affected = $this->vp_field_backup["rows_affected"]; 70 | $this->num_rows = $this->vp_field_backup["num_rows"]; 71 | $this->insert_id = $this->vp_field_backup["insert_id"]; 72 | } 73 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/ChangeInfoMatcher.php: -------------------------------------------------------------------------------- 1 | 'VersionPress\ChangeInfos\VersionPressChangeInfo', 13 | "versionpress/(undo|rollback)/.*" => 'VersionPress\ChangeInfos\RevertChangeInfo', 14 | 15 | "translation/.*" => 'VersionPress\ChangeInfos\TranslationChangeInfo', 16 | "plugin/.*" => 'VersionPress\ChangeInfos\PluginChangeInfo', 17 | "theme/.*" => 'VersionPress\ChangeInfos\ThemeChangeInfo', 18 | "wordpress/update/.*" => 'VersionPress\ChangeInfos\WordPressUpdateChangeInfo', 19 | 20 | "post/.*" => 'VersionPress\ChangeInfos\PostChangeInfo', 21 | "postmeta/.*" => 'VersionPress\ChangeInfos\PostMetaChangeInfo', 22 | "comment/.*" => 'VersionPress\ChangeInfos\CommentChangeInfo', 23 | "option/.*" => 'VersionPress\ChangeInfos\OptionChangeInfo', 24 | "term/.*" => 'VersionPress\ChangeInfos\TermChangeInfo', 25 | "usermeta/.*" => 'VersionPress\ChangeInfos\UserMetaChangeInfo', 26 | "user/.*" => 'VersionPress\ChangeInfos\UserChangeInfo', 27 | 28 | "" => 'VersionPress\ChangeInfos\UntrackedChangeInfo', 29 | 30 | ); 31 | 32 | public static function buildChangeInfo(CommitMessage $commitMessage) { 33 | if (self::findMatchingChangeInfo($commitMessage) === 'VersionPress\ChangeInfos\UntrackedChangeInfo') { 34 | return UntrackedChangeInfo::buildFromCommitMessage($commitMessage); 35 | } 36 | 37 | return ChangeInfoEnvelope::buildFromCommitMessage($commitMessage); 38 | } 39 | 40 | public static function findMatchingChangeInfo(CommitMessage $commitMessage) { 41 | 42 | if (substr_count($commitMessage->getBody(), TrackedChangeInfo::ACTION_TAG) > 1) { 43 | return "VersionPress\ChangeInfos\ChangeInfoEnvelope"; 44 | } 45 | 46 | $actionTagValue = $commitMessage->getVersionPressTag(TrackedChangeInfo::ACTION_TAG); 47 | 48 | foreach (self::$changeInfoMap as $actionTagExpression => $changeInfoType) { 49 | $regex = "~^" . $actionTagExpression . "$~"; 50 | if (preg_match($regex, $actionTagValue)) { 51 | return $changeInfoType; 52 | } 53 | } 54 | 55 | throw new Exception("Matching ChangeInfo type not found"); 56 | } 57 | 58 | public static function matchesChangeInfo(CommitMessage $commitMessage, $changeInfoClass) { 59 | return self::findMatchingChangeInfo($commitMessage) == $changeInfoClass; 60 | } 61 | 62 | } 63 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/PluginChangeInfo.php: -------------------------------------------------------------------------------- 1 | pluginFile = $pluginFile; 21 | $this->action = $action; 22 | $this->pluginName = $pluginName ? $pluginName : $this->findPluginName(); 23 | } 24 | 25 | public function getEntityName() { 26 | return self::$OBJECT_TYPE; 27 | } 28 | 29 | public function getAction() { 30 | return $this->action; 31 | } 32 | 33 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 34 | $actionTag = $commitMessage->getVersionPressTag(TrackedChangeInfo::ACTION_TAG); 35 | $pluginName = $commitMessage->getVersionPressTag(self::PLUGIN_NAME_TAG); 36 | list(, $action, $pluginFile) = explode("/", $actionTag, 3); 37 | return new self($pluginFile, $action, $pluginName); 38 | } 39 | 40 | public function getChangeDescription() { 41 | return Strings::capitalize(StringUtils::verbToPastTense($this->action)) . " plugin '{$this->pluginName}'"; 42 | } 43 | 44 | protected function getActionTagValue() { 45 | return "{$this->getEntityName()}/{$this->getAction()}/" . $this->pluginFile; 46 | } 47 | 48 | public function getCustomTags() { 49 | return array( 50 | self::PLUGIN_NAME_TAG => $this->pluginName 51 | ); 52 | } 53 | 54 | private function findPluginName() { 55 | if (!function_exists('get_plugins')) { 56 | require_once ABSPATH . 'wp-admin/includes/plugin.php'; 57 | } 58 | 59 | $plugins = \get_plugins(); 60 | return $plugins[$this->pluginFile]["Name"]; 61 | } 62 | 63 | public function getChangedFiles() { 64 | $path = WP_CONTENT_DIR . "/plugins/"; 65 | if (dirname($this->pluginFile) == ".") { 66 | 67 | $path .= $this->pluginFile; 68 | } else { 69 | 70 | $path .= dirname($this->pluginFile) . "/*"; 71 | } 72 | $pluginChange = array("type" => "path", "path" => $path); 73 | 74 | $optionChange = array("type" => "storage-file", "entity" => "option", "id" => "", "parent-id" => ""); 75 | 76 | return array($pluginChange, $optionChange); 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/TermChangeInfo.php: -------------------------------------------------------------------------------- 1 | termName = $termName; 22 | $this->taxonomy = $taxonomy; 23 | $this->oldTermName = $oldTermName; 24 | } 25 | 26 | public function getChangeDescription() { 27 | $taxonomy = $this->getTaxonomyName(); 28 | 29 | switch ($this->getAction()) { 30 | case "create": 31 | return "New {$taxonomy} '{$this->termName}'"; 32 | case "delete": 33 | return "Deleted {$taxonomy} '{$this->termName}'"; 34 | case "rename": 35 | return Strings::firstUpper($taxonomy) . " '{$this->oldTermName}' renamed to '{$this->termName}'"; 36 | } 37 | 38 | return "Edited {$taxonomy} '{$this->termName}'"; 39 | } 40 | 41 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 42 | $tags = $commitMessage->getVersionPressTags(); 43 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 44 | list(, $action, $entityId) = explode("/", $actionTag, 3); 45 | $name = $tags[self::TERM_NAME_TAG]; 46 | $oldName = isset($tags[self::TERM_OLD_NAME_TAG]) ? $tags[self::TERM_OLD_NAME_TAG] : null; 47 | $taxonomy = $tags[self::TERM_TAXONOMY_TAG]; 48 | return new self($action, $entityId, $name, $taxonomy, $oldName); 49 | } 50 | 51 | public function getCustomTags() { 52 | $tags = array( 53 | self::TERM_NAME_TAG => $this->termName, 54 | self::TERM_TAXONOMY_TAG => $this->taxonomy, 55 | ); 56 | 57 | if ($this->getAction() === "rename") { 58 | $tags[self::TERM_OLD_NAME_TAG] = $this->oldTermName; 59 | } 60 | 61 | return $tags; 62 | } 63 | 64 | public function getTaxonomyName() { 65 | return str_replace("_", " ", $this->taxonomy); 66 | } 67 | 68 | public function getChangedFiles() { 69 | $changes = parent::getChangedFiles(); 70 | $changes[] = array("type" => "storage-file", "entity" => "option", "id" => "", "parent-id" => ""); 71 | return $changes; 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/m-modern.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap { 2 | clear: both; 3 | } 4 | 5 | .related_post_title { 6 | clear: both; 7 | padding: 0 !important; 8 | margin: 0 !important; 9 | } 10 | div.wp_rp_content { 11 | display: inline-block !important; 12 | } 13 | 14 | div.wp_rp_footer { 15 | text-align: right !important; 16 | } 17 | div.wp_rp_footer a { 18 | color: #999 !important; 19 | font-size: 11px !important; 20 | text-decoration: none !important; 21 | } 22 | div.wp_rp_footer a.wp_rp_edit { 23 | color: #fff !important; 24 | font-size: 12px !important; 25 | text-decoration: underline !important; 26 | font-weight: bold !important; 27 | background: #f79124 !important; 28 | border-radius: 2px !important; 29 | padding: 3px 6px; 30 | } 31 | ul.related_post { 32 | display: inline-block !important; 33 | position: relative !important; 34 | margin: 0 !important; 35 | padding: 0 !important; 36 | } 37 | ul.related_post li { 38 | position: relative !important; 39 | display: inline-block !important; 40 | vertical-align: top !important; 41 | zoom: 1 !important; 42 | *display: inline !important; 43 | width: 100px !important; 44 | margin: 10px 10px 10px 0px !important; 45 | padding: 0 !important; 46 | background: none !important; 47 | } 48 | ul.related_post li a { 49 | position: relative !important; 50 | display: block !important; 51 | font-size: 12px !important; 52 | line-height: 1.5em !important; 53 | text-decoration: none !important; 54 | margin-bottom: 5px !important; 55 | text-indent: 0 !important; 56 | } 57 | ul.related_post li img { 58 | display: block !important; 59 | width: 100px !important; 60 | height: 100px !important; 61 | max-width: 100% !important; 62 | margin: 0 !important; 63 | padding: 0 !important; 64 | background: none !important; 65 | border: none !important; 66 | float: none !important; 67 | 68 | border-radius: 3px !important; 69 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 70 | } 71 | 72 | ul.related_post li a img.wp_rp_santa_hat { 73 | display: none !important; 74 | } 75 | 76 | ul.related_post li small { 77 | font-size: 80%; 78 | } 79 | 80 | @media screen and (max-width: 480px) { 81 | ul.related_post li { 82 | display: block !important; 83 | width: auto !important; 84 | clear: both !important; 85 | } 86 | ul.related_post li a:nth-child(1) { 87 | float: left !important; 88 | } 89 | ul.related_post li a:nth-child(2) { 90 | font-size: 14px !important; 91 | padding: 10px 0 10px 110px !important; 92 | display: block !important; 93 | height: 80px !important; 94 | } 95 | ul.related_post li img { 96 | width: 100px !important; 97 | height: 100px !important; 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /public/wp-content/plugins/wordpress-23-related-posts-plugin/static/themes/m-stream.css: -------------------------------------------------------------------------------- 1 | .wp_rp_wrap { 2 | clear: both; 3 | } 4 | 5 | .related_post_title { 6 | clear: both; 7 | padding: 0 !important; 8 | margin: 0 !important; 9 | } 10 | div.wp_rp_content { 11 | display: inline-block !important; 12 | } 13 | 14 | div.wp_rp_footer { 15 | text-align: right !important; 16 | } 17 | div.wp_rp_footer a { 18 | color: #999 !important; 19 | font-size: 11px !important; 20 | text-decoration: none !important; 21 | } 22 | div.wp_rp_footer a.wp_rp_edit { 23 | color: #fff !important; 24 | font-size: 12px !important; 25 | text-decoration: underline !important; 26 | font-weight: bold !important; 27 | background: #f79124 !important; 28 | border-radius: 2px !important; 29 | padding: 3px 6px; 30 | } 31 | ul.related_post { 32 | display: inline-block !important; 33 | position: relative !important; 34 | margin: 0 !important; 35 | padding: 0 !important; 36 | } 37 | ul.related_post li { 38 | position: relative !important; 39 | display: inline-block !important; 40 | vertical-align: top !important; 41 | zoom: 1 !important; 42 | *display: inline !important; 43 | width: 100px !important; 44 | margin: 10px 10px 10px 0px !important; 45 | padding: 0 !important; 46 | background: none !important; 47 | } 48 | ul.related_post li a { 49 | position: relative !important; 50 | display: block !important; 51 | font-size: 12px !important; 52 | line-height: 1.5em !important; 53 | text-decoration: none !important; 54 | margin-bottom: 5px !important; 55 | text-indent: 0 !important; 56 | } 57 | ul.related_post li img { 58 | display: block !important; 59 | width: 100px !important; 60 | height: 100px !important; 61 | max-width: 100% !important; 62 | margin: 0 !important; 63 | padding: 0 !important; 64 | background: none !important; 65 | border: none !important; 66 | float: none !important; 67 | 68 | border-radius: 3px !important; 69 | box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2) !important; 70 | } 71 | 72 | ul.related_post li a img.wp_rp_santa_hat { 73 | display: none !important; 74 | } 75 | 76 | ul.related_post li small { 77 | font-size: 80%; 78 | } 79 | 80 | @media screen and (max-width: 480px) { 81 | ul.related_post li { 82 | display: block !important; 83 | width: auto !important; 84 | clear: both !important; 85 | } 86 | ul.related_post li a:nth-child(1) { 87 | float: left !important; 88 | } 89 | ul.related_post li a:nth-child(2) { 90 | font-size: 14px !important; 91 | padding: 10px 0 10px 110px !important; 92 | display: block !important; 93 | height: 80px !important; 94 | } 95 | ul.related_post li img { 96 | width: 100px !important; 97 | height: 100px !important; 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/undo.php: -------------------------------------------------------------------------------- 1 | resolve(VersionPressServices::REPOSITORY); 13 | 14 | 15 | $reverter = $versionPressContainer->resolve(VersionPressServices::REVERTER); 16 | 17 | $canRevert = $reverter->canRevert(); 18 | $commit = $repository->getCommit($_GET['commit']); 19 | $changeInfo = ChangeInfoMatcher::buildChangeInfo($commit->getMessage()); 20 | 21 | $method = $_GET['method']; 22 | 23 | $title = ($method == 'undo') 24 | ? "
    Undo {$changeInfo->getChangeDescription()} ?
    " 25 | : "
    Roll back to {$commit->getDate()->format('d-M-y H:i:s')} ?
    "; 26 | 27 | $message = " 28 |

    29 | For EAP releases, please have a backup. 30 | 31 | Learn more about reverts. 32 | 33 |

    "; 34 | 35 | $errors = ( !$canRevert ? " 36 |

    37 | 38 | You have uncommitted changes in your WordPress directory.
    39 | Please commit them before doing a revert. 40 |

    " : ""); 41 | 42 | $buttonProceed = "Proceed"; 46 | $buttonCancel = "Cancel"; 50 | 51 | $body = " 52 |
    53 | {$message} 54 | {$errors} 55 |
    56 | {$buttonProceed} 57 | {$buttonCancel} 58 |
    59 |
    60 | "; 61 | 62 | if(isAjax()) { 63 | $response = new stdClass(); 64 | $response->body = $body; 65 | echo json_encode($response); 66 | wp_die(); 67 | } else { 68 | echo "

    {$title}

    "; 69 | echo $body; 70 | } -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/src/ChangeInfos/PostMetaChangeInfo.php: -------------------------------------------------------------------------------- 1 | postType = $postType; 26 | $this->postTitle = $postTitle; 27 | $this->postVpId = $postVpId; 28 | $this->metaKey = $metaKey; 29 | } 30 | 31 | public static function buildFromCommitMessage(CommitMessage $commitMessage) { 32 | $tags = $commitMessage->getVersionPressTags(); 33 | $actionTag = $tags[TrackedChangeInfo::ACTION_TAG]; 34 | list(, $action, $entityId) = explode("/", $actionTag, 3); 35 | $titleTag = isset($tags[self::POST_TITLE_TAG]) ? $tags[self::POST_TITLE_TAG] : $entityId; 36 | $type = $tags[self::POST_TYPE_TAG]; 37 | $metaKey = $tags[self::POST_META_KEY]; 38 | $postVpId = $tags[self::POST_VPID_TAG]; 39 | return new self($action, $entityId, $type, $titleTag, $postVpId, $metaKey); 40 | } 41 | 42 | public function getChangeDescription() { 43 | $verb = "Edited"; 44 | $subject = "post-meta '{$this->metaKey}'"; 45 | $rest = "for {$this->postType} '{$this->postTitle}'"; 46 | 47 | if ($this->metaKey === "_thumbnail_id") { 48 | $verb = "Changed"; 49 | $subject = "featured image"; 50 | 51 | if ($this->getAction() === "create") 52 | $verb = "Set"; 53 | if ($this->getAction() === "delete") 54 | $verb = "Removed"; 55 | } elseif ($this->getAction() === "create" || $this->getAction() === "delete") { 56 | $verb = Strings::firstUpper(StringUtils::verbToPastTense($this->getAction())); 57 | } 58 | 59 | return sprintf("%s %s %s", $verb, $subject, $rest); 60 | } 61 | 62 | public function getCustomTags() { 63 | return array( 64 | self::POST_TITLE_TAG => $this->postTitle, 65 | self::POST_TYPE_TAG => $this->postType, 66 | self::POST_META_KEY => $this->metaKey, 67 | self::POST_VPID_TAG => $this->postVpId, 68 | ); 69 | } 70 | 71 | public function getParentId() { 72 | return $this->postVpId; 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /public/wp-content/plugins/versionpress/admin/deactivate.php: -------------------------------------------------------------------------------- 1 | "; 9 | echo ""; 10 | submit_button($label, $type, $action, false, $other_attributes = array("id" => $action) ); 11 | echo ""; 12 | } 13 | 14 | ?> 15 | 16 |
    17 |

    VersionPress deactivation

    18 | 19 |
    20 |

    You are about to deactivate VersionPress. Be aware that:

    21 | 22 |
      23 | 24 |
    • 25 | 26 | Later installations of VersionPress will not be able to undo or rollback changes done by this installation. The changes are still technically in the repository if you want to inspect them using e.g. the command line tools etc. 27 |
    • 28 | 29 |
    • 30 | 31 | Deactivation keeps the Git repository on the server. You can e.g. download the repository for local inspection. 32 |
    • 33 | 34 |
    • 35 | 36 | You can reactivate VersionPress again and the current Git repository will not cause any trouble. The new VersionPress installation will just not be able to undo the old changes as stated above. 37 |
    • 38 | 39 | 42 | 43 |
    • 44 | 45 | If you uninstall VersionPress later (by clicking the Delete button on the Plugins page) the Git repository will be moved to the wp-content/vpbackups folder. The site will appear unversioned but you can always restore the repository from there should you need to. 46 |
    • 47 | 48 | 51 |
    52 | 53 |
    54 | 55 | 56 | 57 | 58 |
    59 | 60 |
    61 | 62 |
    63 | --------------------------------------------------------------------------------