Changeset 3486553
- Timestamp:
- 03/19/2026 02:13:52 PM (2 weeks ago)
- Location:
- media-license
- Files:
-
- 62 added
- 4 edited
-
tags/1.6.7 (added)
-
tags/1.6.7/classes (added)
-
tags/1.6.7/classes/AdminPage.php (added)
-
tags/1.6.7/classes/Assets.php (added)
-
tags/1.6.7/classes/BlockX (added)
-
tags/1.6.7/classes/BlockX/ListOfLicenses.php (added)
-
tags/1.6.7/classes/BlockX/_preparedContents.php (added)
-
tags/1.6.7/classes/Components (added)
-
tags/1.6.7/classes/Components/Plugin.php (added)
-
tags/1.6.7/classes/CreativeCommon.php (added)
-
tags/1.6.7/classes/Footer.php (added)
-
tags/1.6.7/classes/Gutenberg.php (added)
-
tags/1.6.7/classes/Headless (added)
-
tags/1.6.7/classes/Headless.php (added)
-
tags/1.6.7/classes/Headless/FeaturedMedia.php (added)
-
tags/1.6.7/classes/Headless/ImageBlockPreparation.php (added)
-
tags/1.6.7/classes/MetaFields.php (added)
-
tags/1.6.7/classes/Render.php (added)
-
tags/1.6.7/classes/Rest.php (added)
-
tags/1.6.7/classes/Shortcode.php (added)
-
tags/1.6.7/composer.json (added)
-
tags/1.6.7/composer.lock (added)
-
tags/1.6.7/js (added)
-
tags/1.6.7/js/admin-textarea-toolbar.js (added)
-
tags/1.6.7/js/api.js (added)
-
tags/1.6.7/js/gutenberg (added)
-
tags/1.6.7/js/gutenberg/media-license.asset.php (added)
-
tags/1.6.7/js/gutenberg/media-license.js (added)
-
tags/1.6.7/js/gutenberg/media-license.js.map (added)
-
tags/1.6.7/languages (added)
-
tags/1.6.7/languages/media-license-ch_CH.mo (added)
-
tags/1.6.7/languages/media-license-ch_CH.po (added)
-
tags/1.6.7/languages/media-license-de_CH.mo (added)
-
tags/1.6.7/languages/media-license-de_CH.po (added)
-
tags/1.6.7/languages/media-license-de_CH_informal.mo (added)
-
tags/1.6.7/languages/media-license-de_CH_informal.po (added)
-
tags/1.6.7/languages/media-license-de_DE.mo (added)
-
tags/1.6.7/languages/media-license-de_DE.po (added)
-
tags/1.6.7/languages/media-license.pot (added)
-
tags/1.6.7/media-license.php (added)
-
tags/1.6.7/public-functions.php (added)
-
tags/1.6.7/readme.txt (added)
-
tags/1.6.7/styles (added)
-
tags/1.6.7/styles/frontend.css (added)
-
tags/1.6.7/templates (added)
-
tags/1.6.7/templates/blockx__media-license--list-of-licenses.php (added)
-
tags/1.6.7/templates/blockx__media-license--list-of-licenses__editor.php (added)
-
tags/1.6.7/templates/media-license-caption.tpl.php (added)
-
tags/1.6.7/vendor (added)
-
tags/1.6.7/vendor/autoload.php (added)
-
tags/1.6.7/vendor/composer (added)
-
tags/1.6.7/vendor/composer/ClassLoader.php (added)
-
tags/1.6.7/vendor/composer/InstalledVersions.php (added)
-
tags/1.6.7/vendor/composer/LICENSE (added)
-
tags/1.6.7/vendor/composer/autoload_classmap.php (added)
-
tags/1.6.7/vendor/composer/autoload_namespaces.php (added)
-
tags/1.6.7/vendor/composer/autoload_psr4.php (added)
-
tags/1.6.7/vendor/composer/autoload_real.php (added)
-
tags/1.6.7/vendor/composer/autoload_static.php (added)
-
tags/1.6.7/vendor/composer/installed.json (added)
-
tags/1.6.7/vendor/composer/installed.php (added)
-
trunk/classes/Assets.php (modified) (3 diffs)
-
trunk/classes/MetaFields.php (modified) (2 diffs)
-
trunk/js/admin-textarea-toolbar.js (added)
-
trunk/media-license.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
media-license/trunk/classes/Assets.php
r3465002 r3486553 26 26 add_action('init', array($this, 'register'), 1); 27 27 add_action('wp_enqueue_scripts', array($this, 'enqueue_script')); 28 add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_script')); 28 29 } 29 30 … … 41 42 ); 42 43 wp_localize_script(Plugin::HANDLE_API_JS, "MediaLicense_API", $obj); 44 45 wp_register_script( 46 Plugin::HANDLE_ADMIN_TEXTAREA_JS, 47 $this->plugin->getUrl('/js/admin-textarea-toolbar.js'), 48 [], 49 filemtime($this->plugin->getPath('/js/admin-textarea-toolbar.js')), 50 true 51 ); 43 52 } 44 53 … … 54 63 [], 55 64 filemtime($this->plugin->getPath('/styles/frontend.css')) 56 ); 57 } 65 ); 66 } 67 } 68 69 function enqueue_admin_script($hook_suffix){ 70 if (!in_array($hook_suffix, ['upload.php', 'post.php', 'post-new.php', 'media-upload.php', 'media_page_media-license-settings'], true)) { 71 return; 72 } 73 74 wp_enqueue_script(Plugin::HANDLE_ADMIN_TEXTAREA_JS); 58 75 } 59 76 } -
media-license/trunk/classes/MetaFields.php
r3483729 r3486553 143 143 } 144 144 break; 145 case "textarea": 146 if ($this->use_textarea_toolbar($fd)) { 147 $fd['input'] = 'html'; 148 $fd['html'] = $this->get_textarea_editor_markup($post->ID, $meta_key, (empty($value)) ? '' : $value); 149 } else { 150 $fd['value'] = (empty($value))? '': $value; 151 } 152 break; 145 153 default: 146 154 $fd['value'] = (empty($value))? '': $value; … … 153 161 154 162 return $form_fields; 163 } 164 165 private function use_textarea_toolbar($field_definition){ 166 return isset($field_definition['sanitize']) && 'html' === $field_definition['sanitize']; 167 } 168 169 private function get_textarea_editor_markup($post_id, $meta_key, $value){ 170 $field_name = "attachments[{$post_id}][{$meta_key}]"; 171 $field_id = "attachments-{$post_id}-{$meta_key}"; 172 $preview_id = $field_id . '-preview'; 173 $buttons = [ 174 ['tag' => 'strong', 'label' => __('Bold', 'media_license')], 175 ['tag' => 'em', 'label' => __('Italic', 'media_license')], 176 ['tag' => 'link', 'label' => __('Link', 'media_license')], 177 ]; 178 179 $html = "<div class='media-license-textarea-editor'>"; 180 $html .= "<div class='media-license-textarea-toolbar' data-target='" . esc_attr($field_id) . "'>"; 181 foreach ($buttons as $button) { 182 $html .= "<button type='button' class='button button-small media-license-textarea-button' data-tag='" . esc_attr($button['tag']) . "'>" . esc_html($button['label']) . "</button> "; 183 } 184 $html .= "</div>"; 185 $html .= "<div class='media-license-textarea-link-form' data-target='" . esc_attr($field_id) . "' hidden>"; 186 $html .= "<label>" . esc_html(__('Link URL', 'media_license')) . " <input type='url' class='regular-text media-license-textarea-link-input' value='https://' placeholder='https://' /></label> "; 187 $html .= "<button type='button' class='button button-small media-license-textarea-link-apply'>" . esc_html(__('Apply', 'media_license')) . "</button> "; 188 $html .= "<button type='button' class='button button-small media-license-textarea-link-cancel'>" . esc_html(__('Cancel', 'media_license')) . "</button>"; 189 $html .= "</div>"; 190 $html .= "<textarea id='" . esc_attr($field_id) . "' name='" . esc_attr($field_name) . "'>" . esc_textarea($value) . "</textarea>"; 191 $html .= "<p><strong>" . esc_html(__('Preview', 'media_license')) . "</strong></p>"; 192 $html .= "<div id='" . esc_attr($preview_id) . "' class='media-license-textarea-preview' data-source='" . esc_attr($field_id) . "'></div>"; 193 $html .= "</div>"; 194 195 return $html; 155 196 } 156 197 -
media-license/trunk/media-license.php
r3483729 r3486553 4 4 * Plugin URI: https://github.com/palasthotel/media-license 5 5 * Description: Advanced caption with license for media files 6 * Version: 1.6. 66 * Version: 1.6.7 7 7 * Author: Palasthotel <rezeption@palasthotel.de> (in person: Edward Bock, Lucas Regalar) 8 8 * Author URI: http://www.palasthotel.de … … 105 105 const HANDLE_API_JS = "media-license-js"; 106 106 const HANDLE_GUTENBERG_JS = "media-license-gutenberg"; 107 const HANDLE_ADMIN_TEXTAREA_JS = "media-license-admin-textarea"; 107 108 108 109 /** … … 183 184 184 185 require_once dirname( __FILE__ ) . "/public-functions.php"; 185 -
media-license/trunk/readme.txt
r3483729 r3486553 5 5 Requires at least: 5.0 6 6 Tested up to: 6.8.1 7 Stable tag: 1.6. 67 Stable tag: 1.6.7 8 8 License: GPLv3 9 9 License URI: http://www.gnu.org/licenses/gpl … … 32 32 33 33 == Changelog == 34 = 1.6.7 = 35 * Feature: Add rich text editor tools to textarea input 36 34 37 = 1.6.6 = 35 38 * Feature: Add html-sanitization option to add_fields hook
Note: See TracChangeset
for help on using the changeset viewer.