feat: add S3-compatible storage provider (MinIO, Ceph, R2, etc.)
Adds a new 'S3-Compatible Storage' provider that works with any
S3-API-compatible object storage service, including MinIO, Ceph,
Cloudflare R2, Backblaze B2, and others.
Changes:
- New provider class: classes/providers/storage/s3-compatible-provider.php
- Provider key: s3compatible
- Reads user-configured endpoint URL from settings
- Uses path-style URL access (required by most S3-compatible services)
- Supports credentials via AS3CF_S3COMPAT_ACCESS_KEY_ID /
AS3CF_S3COMPAT_SECRET_ACCESS_KEY wp-config.php constants
- Disables AWS-specific features (Block Public Access, Object Ownership)
- New provider SVG icons (s3compatible.svg, -link.svg, -round.svg)
- Registered provider in main plugin class with endpoint setting support
- Updated StorageProviderSubPage to show endpoint URL input for S3-compatible
- Built pro settings bundle with rollup (Svelte 4.2.19)
- Added package.json and updated rollup.config.mjs for pro-only builds
This commit is contained in:
37
assets/js/notice.js
Normal file
37
assets/js/notice.js
Normal file
@@ -0,0 +1,37 @@
|
||||
(function( $ ) {
|
||||
|
||||
var $body = $( 'body' );
|
||||
|
||||
$body.on( 'click', '.as3cf-notice .notice-dismiss', function( e ) {
|
||||
var id = $( this ).parents( '.as3cf-notice' ).attr( 'id' );
|
||||
if ( id ) {
|
||||
var data = {
|
||||
action: 'as3cf-dismiss-notice',
|
||||
notice_id: id,
|
||||
_nonce: as3cf_notice.nonces.dismiss_notice
|
||||
};
|
||||
|
||||
$.ajax( {
|
||||
url: ajaxurl,
|
||||
type: 'POST',
|
||||
dataType: 'JSON',
|
||||
data: data,
|
||||
error: function( jqXHR, textStatus, errorThrown ) {
|
||||
alert( as3cf_notice.strings.dismiss_notice_error + errorThrown );
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
$body.on( 'click', '.as3cf-notice-toggle', function( e ) {
|
||||
e.preventDefault();
|
||||
var $link = $( this );
|
||||
var label = $link.data( 'hide' );
|
||||
|
||||
$link.data( 'hide', $link.html() );
|
||||
$link.html( label );
|
||||
|
||||
$link.closest( '.as3cf-notice' ).find( '.as3cf-notice-toggle-content' ).toggle();
|
||||
} );
|
||||
|
||||
})( jQuery );
|
||||
Reference in New Issue
Block a user