Changeset 3302189
- Timestamp:
- 05/28/2025 11:55:22 AM (10 months ago)
- Location:
- showcase-creator
- Files:
-
- 89 added
- 9 edited
-
tags/1.0.10 (added)
-
tags/1.0.10/LICENCE (added)
-
tags/1.0.10/block (added)
-
tags/1.0.10/block/block.php (added)
-
tags/1.0.10/block/build (added)
-
tags/1.0.10/block/build/block.json (added)
-
tags/1.0.10/block/build/index.asset.php (added)
-
tags/1.0.10/block/build/index.css (added)
-
tags/1.0.10/block/build/index.css.map (added)
-
tags/1.0.10/block/build/index.js (added)
-
tags/1.0.10/block/build/index.js.map (added)
-
tags/1.0.10/block/build/render.php (added)
-
tags/1.0.10/block/build/style-index.css (added)
-
tags/1.0.10/block/package-lock.json (added)
-
tags/1.0.10/block/package.json (added)
-
tags/1.0.10/block/src (added)
-
tags/1.0.10/block/src/block.json (added)
-
tags/1.0.10/block/src/edit.js (added)
-
tags/1.0.10/block/src/editor.scss (added)
-
tags/1.0.10/block/src/index.js (added)
-
tags/1.0.10/block/src/render.php (added)
-
tags/1.0.10/block/src/style.scss (added)
-
tags/1.0.10/languages (added)
-
tags/1.0.10/readme.txt (added)
-
tags/1.0.10/requirements.txt (added)
-
tags/1.0.10/showcase-creator.php (added)
-
tags/1.0.10/src (added)
-
tags/1.0.10/src/admin.css (added)
-
tags/1.0.10/src/admin.js (added)
-
tags/1.0.10/src/admin.php (added)
-
tags/1.0.10/src/ajax.php (added)
-
tags/1.0.10/src/auto-listing.php (added)
-
tags/1.0.10/src/class-layout-element-type.php (added)
-
tags/1.0.10/src/class-layout-element.php (added)
-
tags/1.0.10/src/class-layout.php (added)
-
tags/1.0.10/src/class-ordered-list.php (added)
-
tags/1.0.10/src/class.php (added)
-
tags/1.0.10/src/default-layouts.json (added)
-
tags/1.0.10/src/frontend.php (added)
-
tags/1.0.10/src/home.js (added)
-
tags/1.0.10/src/home.php (added)
-
tags/1.0.10/src/layout-builder.css (added)
-
tags/1.0.10/src/layout-builder.js (added)
-
tags/1.0.10/src/layout-element-types.php (added)
-
tags/1.0.10/src/layout-importer.js (added)
-
tags/1.0.10/src/layout-library.css (added)
-
tags/1.0.10/src/layout-library.js (added)
-
tags/1.0.10/src/layout-library.php (added)
-
tags/1.0.10/src/layout.css (added)
-
tags/1.0.10/src/layouts.php (added)
-
tags/1.0.10/src/modules (added)
-
tags/1.0.10/src/modules/content-switch.js (added)
-
tags/1.0.10/src/modules/context-menu.css (added)
-
tags/1.0.10/src/modules/context-menu.js (added)
-
tags/1.0.10/src/modules/dialog.css (added)
-
tags/1.0.10/src/modules/dialog.js (added)
-
tags/1.0.10/src/modules/file-list.css (added)
-
tags/1.0.10/src/modules/file-list.js (added)
-
tags/1.0.10/src/modules/hint.css (added)
-
tags/1.0.10/src/modules/hint.js (added)
-
tags/1.0.10/src/modules/item-list.css (added)
-
tags/1.0.10/src/modules/item-list.js (added)
-
tags/1.0.10/src/modules/lightbox.css (added)
-
tags/1.0.10/src/modules/lightbox.js (added)
-
tags/1.0.10/src/modules/loading.css (added)
-
tags/1.0.10/src/modules/loading.js (added)
-
tags/1.0.10/src/modules/number-input.css (added)
-
tags/1.0.10/src/modules/number-input.js (added)
-
tags/1.0.10/src/modules/select.css (added)
-
tags/1.0.10/src/modules/select.js (added)
-
tags/1.0.10/src/modules/slider.js (added)
-
tags/1.0.10/src/modules/text-input.css (added)
-
tags/1.0.10/src/modules/text-input.js (added)
-
tags/1.0.10/src/modules/toggle.css (added)
-
tags/1.0.10/src/modules/toggle.js (added)
-
tags/1.0.10/src/modules/tokens-input.css (added)
-
tags/1.0.10/src/modules/tokens-input.js (added)
-
tags/1.0.10/src/modules/vid-modules.css (added)
-
tags/1.0.10/src/modules/vid-modules.js (added)
-
tags/1.0.10/src/ordered-lists.js (added)
-
tags/1.0.10/src/ordered-lists.php (added)
-
tags/1.0.10/src/post-meta-box.js (added)
-
tags/1.0.10/src/post-meta-box.php (added)
-
tags/1.0.10/src/rest.php (added)
-
tags/1.0.10/src/settings.js (added)
-
tags/1.0.10/src/settings.php (added)
-
tags/1.0.10/src/template-default.php (added)
-
tags/1.0.10/src/template-preview.php (added)
-
tags/1.0.10/src/upgrade.php (added)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/showcase-creator.php (modified) (1 diff)
-
trunk/src/ajax.php (modified) (4 diffs)
-
trunk/src/class.php (modified) (6 diffs)
-
trunk/src/frontend.php (modified) (1 diff)
-
trunk/src/layouts.php (modified) (2 diffs)
-
trunk/src/modules/select.css (modified) (2 diffs)
-
trunk/src/modules/slider.js (modified) (6 diffs)
-
trunk/src/ordered-lists.js (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
showcase-creator/trunk/readme.txt
r3239647 r3302189 4 4 Tags: showcase creator, posts, showcase, show posts, post order 5 5 Requires at least: 6.1 6 Tested up to: 6. 77 Stable tag: 1.0. 96 Tested up to: 6.8 7 Stable tag: 1.0.10 8 8 Requires PHP: 7.0 9 9 License: GPLv2 or later … … 128 128 == Changelog == 129 129 130 = 1.0.10 = 131 * Bug fixed: Ordered Lists - Post filtering by taxonomy not working. 132 * Bug fixed: Bulk export layouts - Not a valid JSON file. 133 * Bug fixed: Importing Ordered Lists - Wrong response message. 134 130 135 = 1.0.9 = 131 136 * Feature added: Masonry option - Fit width. -
showcase-creator/trunk/showcase-creator.php
r3239647 r3302189 4 4 * Plugin URI: https://videlinify.com/showcase-creator/ 5 5 * Description: Provides tools to display a showcase of posts (or custom post types) using a custom layout, advanced filtering and customized post order. 6 * Version: 1.0. 96 * Version: 1.0.10 7 7 * Requires PHP: 7.0 8 8 * Author: Videlin Djedjev -
showcase-creator/trunk/src/ajax.php
r3190704 r3302189 11 11 */ 12 12 function showcase_creator_ajax_import_layouts() { 13 14 13 if ( 15 14 ! Showcase_Creator::has_access() || … … 280 279 } 281 280 $imported = $showcase_creator->import_ordered_lists( $data ); 282 if ( ! is_array( $imported ) || ! count( $imported )) {281 if ( ! $imported ) { 283 282 wp_send_json( array( 284 283 'status' => 'error', … … 287 286 wp_die(); 288 287 return; 289 } 290 else { 288 } else { 291 289 wp_send_json( array( 292 290 'status' => 'success', … … 296 294 '%s Ordered List imported.', 297 295 '%s Ordered Lists imported.', 298 count( $imported ),296 $imported, 299 297 'showcase-creator' 300 298 ), 301 number_format_i18n( count( $imported ))299 number_format_i18n( $imported ) 302 300 ), 303 301 ) ); -
showcase-creator/trunk/src/class.php
r3267053 r3302189 18 18 * @var string $version x.x.x format 19 19 */ 20 public static string $version = '1.0. 9';20 public static string $version = '1.0.10'; 21 21 22 22 /** … … 126 126 self::register_asset( '-content-switch', '/src/modules/content-switch.js' ); 127 127 self::register_asset( '-lightbox', '/src/modules/lightbox' ); 128 self::register_asset( '-slider', '/src/modules/slider.js' );128 self::register_asset( '-slider', '/src/modules/slider.js', array( 'jquery' ) ); 129 129 self::register_asset( '-home', '/src/home.js', array( 'jquery' ) ); 130 130 self::register_asset( … … 282 282 self::register_asset( '-vid-modules', '/src/modules/vid-modules' ); 283 283 self::register_asset( '-lightbox', '/src/modules/lightbox', [], true ); 284 self::register_asset( '-slider', '/src/modules/slider.js' );284 self::register_asset( '-slider', '/src/modules/slider.js', array( 'jquery' ) ); 285 285 // Detects if any layout uses lightbox and enqueues the script if so. 286 286 if ( self::array_any( self::$active_layouts, function( $l ) { … … 296 296 self::require_layout_classes(); 297 297 self::register_asset( '-vid-modules', '/src/modules/vid-modules' ); 298 self::register_asset( '-slider', '/src/modules/slider.js' );298 self::register_asset( '-slider', '/src/modules/slider.js', array( 'jquery' ) ); 299 299 self::enqueue_assets( '-vid-modules', '-slider', 'jquery', 'jquery-masonry' ); 300 300 } ); … … 996 996 } else if ( 'slug' === $p ) { 997 997 $layout['slug'] = $l->post_name; 998 } else if ( ' _elements' === $p ) {998 } else if ( 'elements' === $p ) { 999 999 $layout['elements'] = get_post_meta( $l->ID, '_elements', true ); 1000 } else if ( ' _css' === $p ) {1000 } else if ( 'css' === $p ) { 1001 1001 $layout['css'] = get_post_meta( $l->ID, '_css', true ); 1002 } else if ( ' _script' === $p ) {1002 } else if ( 'script' === $p ) { 1003 1003 $layout['script'] = get_post_meta( $l->ID, '_script', true ); 1004 } else if ( ' _preview' === $p ) {1004 } else if ( 'preview' === $p ) { 1005 1005 $layout['preview'] = get_post_meta( $l->ID, '_preview', true ); 1006 1006 } else { … … 1440 1440 } 1441 1441 1442 /** 1443 * Writes to the plugin log file or creates if it does not exists. 1444 * For debugging purposes. 1445 * 1446 * @since 1.0.10 1447 * 1448 * @param mixed $data to be written. 1449 */ 1450 public static function log( ...$data ) { 1451 $print = ''; 1452 foreach ( $data as $d ) { 1453 if ( is_array( $d ) || is_object( $d ) ) { 1454 $print .= wp_json_encode( $d, JSON_PRETTY_PRINT ) . PHP_EOL . PHP_EOL; 1455 } else { 1456 $print .= print_r( $d, true ) . PHP_EOL . PHP_EOL; 1457 } 1458 } 1459 $log = '=== START OF ENTRY ===' . PHP_EOL . 1460 'Date: ' . gmdate('d.m.y, H:i:s') . ' GMT' . PHP_EOL . 1461 $print . 1462 '=== END OF ENTRY ===' . PHP_EOL . PHP_EOL; 1463 file_put_contents( 1464 path_join( SHOWCASE_CREATOR_PATH, 'debug.log' ), 1465 $log, 1466 FILE_APPEND 1467 ); 1468 } 1469 1442 1470 } -
showcase-creator/trunk/src/frontend.php
r3200055 r3302189 20 20 <div class="paging-navigation"> 21 21 <div class="nav-links"><?php 22 echo wp_kses_ data( paginate_links( array(22 echo wp_kses_post( paginate_links( array( 23 23 'base' => $base . '%_%', 24 24 'format' => ( str_contains( $base, '?' ) ? '&' : '?' ) . 'paged=%#%', -
showcase-creator/trunk/src/layouts.php
r3239647 r3302189 234 234 } 235 235 if ( $layouts ) { 236 $output = wp_json_encode( $layouts );236 $output = wp_json_encode( $layouts, JSON_PRETTY_PRINT ); 237 237 if ( $output ) { 238 238 header( 'Content-Type: application/json' ); … … 241 241 'filename="showcase-creator-exported-layouts.json"' 242 242 ); 243 echo esc_textarea( sanitize_textarea_field( $output ));243 echo wp_kses_data( $output ); 244 244 exit; 245 245 } -
showcase-creator/trunk/src/modules/select.css
r3190704 r3302189 37 37 width: max-content; 38 38 height: max-content; 39 max-height: 50vh; 40 overflow-y: auto; 39 41 -webkit-box-shadow: 5px 5px 10px 0px #0005; 40 42 box-shadow: 5px 5px 10px 0px #0005; … … 46 48 gap: 10px; 47 49 width: 100%; 48 min-height: 2em;49 50 padding: 5px; 50 51 color: var(--vid-text-color) !important; -
showcase-creator/trunk/src/modules/slider.js
r3190704 r3302189 1 ( () => { 2 1 2 jQuery( document ).ready( ( $ ) => { 3 3 4 let sc, modules, EL, ms; 4 5 try { … … 136 137 ); 137 138 this.wrapper.style.minHeight = this.tallest + 'px'; 139 const wrapperWidth = this.wrapper.getBoundingClientRect().width; 140 this.items.forEach( i => i.style.maxWidth = ( wrapperWidth - 10 ) + 'px' ); 138 141 this.widths = this.items.map( i => { 139 142 const style = getComputedStyle( i ); … … 144 147 ); 145 148 } ); 146 const wrapperWidth = this.wrapper.getBoundingClientRect().width;147 149 this.clonedItems = []; 148 150 const l = this.items.length; … … 154 156 if ( i > this.widths.length-1 ) { 155 157 i = 0; 158 } 159 if ( 'undefined' === typeof item ) { 160 continue; 156 161 } 157 162 sum += this.widths[i]; … … 332 337 [ ...this.items, ...this.clonedItems ].forEach( c => c.remove() ); 333 338 this.wrapper.append( ...this.items ); 334 this.items.forEach( i => i.style.width = window.getComputedStyle( i ).width);339 this.items.forEach( i => { console.log( i ); i.style.width = getComputedStyle( i ).width; } ); 335 340 this.slider.append( ...this.items ); 336 341 this.counter && ( this.counter.remove() ); … … 398 403 399 404 // Auto-mount sliders. 400 window.addEventListener( 'load',() => modules.slider.autoMount() );401 402 } ) ();405 $( window ).ready( () => modules.slider.autoMount() ); 406 407 } ); -
showcase-creator/trunk/src/ordered-lists.js
r3267053 r3302189 1417 1417 query.post_type = filterType.value[0]; 1418 1418 if ( filterTax.value[0] && filterTerm.value[0] ) { 1419 query.tax_query = {1419 query.tax_query = [ { 1420 1420 taxonomy: filterTax.value[0], 1421 terms: filterTerm.value[0]1422 } ;1421 terms: [ filterTerm.value[0] ] 1422 } ]; 1423 1423 } 1424 1424 }
Note: See TracChangeset
for help on using the changeset viewer.