Plugin Directory

Changeset 3070233


Ignore:
Timestamp:
04/14/2024 02:40:30 PM (2 years ago)
Author:
utkarshpatel
Message:

Update to version 1.4.0 from GitHub

Location:
better-file-name
Files:
14 added
4 deleted
20 edited
1 copied

Legend:

Unmodified
Added
Removed
  • better-file-name/tags/1.4.0/.gitattributes

    r3024634 r3070233  
    77package.json export-ignore
    88package-lock.json export-ignore
     9/.wordpress-org export-ignore
  • better-file-name/tags/1.4.0/better-file-name.php

    r3070148 r3070233  
    77 * Author URI:      github.com/patelutkarsh
    88 * Text Domain:     better-file-name
    9  * Version:         1.3.3
     9 * Version:         1.4.0
    1010 * Requires PHP:    8.1
    1111 * License:         GPL-2.0-or-later
     
    3535$better_file_name_admin                 = new Admin( $better_file_name_settings, plugins_url( 'build', __FILE__ ) );
    3636$better_file_name_dalle_image_generator = new Dalle_Image_Generator( $better_file_name_settings );
     37$better_file_name_alt_text_rest_api     = new Better_File_Name_Ai\Alt_Text_Rest_Api( $better_file_name_settings );
    3738
    3839if ( defined( 'WP_CLI' ) && WP_CLI ) {
  • better-file-name/tags/1.4.0/readme.md

    r3024634 r3070233  
    1313</div>
    1414
     15### Additional features:
    1516
    16 ### Additional features:
    17 - Allows generating featured image using dall-e-2 or dall-e-3 API.
     17-   Allows generating featured image using dall-e-2 or dall-e-3 API.
    1818
    1919> Note: GPT-4 Vision is in preview, It is not recommended to use this plugin on a production site.
    2020
    2121## Demo:
     22
    2223https://github.com/PatelUtkarsh/better-file-name-ai/assets/5015489/1f0ce636-ceeb-4e6e-918b-872d3069d40f
    23 
    2424
    2525## Installation
  • better-file-name/tags/1.4.0/readme.txt

    r3070148 r3070233  
    66Tested up to: 6.4.1
    77Requires PHP: 8.1
    8 Stable tag: 1.3.3
     8Stable tag: 1.4.0
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
  • better-file-name/tags/1.4.0/src/Admin.php

    r3024634 r3070233  
    1818            return;
    1919        }
     20
     21        if ( defined( 'WP_IMPORTING' ) && WP_IMPORTING ) {
     22            return;
     23        }
     24
    2025        if ( $this->settings->get_rename_file() ) {
    2126            add_filter( 'wp_handle_sideload_prefilter', [ $this, 'rename_new_file' ], 9999 );
     
    2429
    2530        if ( $this->settings->should_generate_alt_text() ) {
    26             add_filter( 'wp_update_attachment_metadata', [ $this, 'update_alt_text' ], 10, 2 );
     31            add_filter( 'wp_update_attachment_metadata', $this->update_alt_text( ... ), 10, 2 );
     32            add_filter( 'attachment_fields_to_edit', $this->attachment_fields_to_edit( ... ), 10, 2 );
     33            add_action( 'wp_enqueue_media', $this->enqueue_media( ... ) );
    2734        }
    2835
     
    104111        );
    105112    }
     113
     114    /**
     115     * Add custom field to media attachment
     116     *
     117     * @param array  $form_fields Form fields.
     118     * @param object $post        WP_Post object.
     119     *
     120     * @return array
     121     */
     122    public function attachment_fields_to_edit( $form_fields, $post ) {
     123        if ( ! str_starts_with( $post->post_mime_type, 'image' ) ) {
     124            return $form_fields;
     125        }
     126
     127        $form_fields['alt-text-generator'] = [
     128            'input' => 'html',
     129            'html'  => sprintf( '<button class="button generate-alt-text" data-media-id="%d">%s</button><span class="generate-alt-text__loading hidden">%s</span><span class="spinner"></span>', $post->ID, __( 'Generate alt text', 'better-file-name' ), esc_html__( 'Generating alt text...', 'better-file-name' ) ),
     130            'label' => '',
     131        ];
     132
     133        return $form_fields;
     134    }
     135
     136    public function enqueue_media() {
     137        $version_file = __DIR__ . '/../build/media-alt-text.asset.php';
     138        if ( ! file_exists( $version_file ) ) {
     139            return;
     140        }
     141        $version = include $version_file;
     142        wp_enqueue_script(
     143            'better-file-name-ai-media',
     144            $this->plugin_url . '/media-alt-text.js',
     145            $version['dependencies'],
     146            $version['version'],
     147            [
     148                'in_footer' => true,
     149            ]
     150        );
     151
     152        wp_localize_script(
     153            'better-file-name-ai-media',
     154            'betterFileName',
     155            [
     156                'api'   => rest_url( 'better-file-name/v1/alt-text-generator' ),
     157                'nonce' => wp_create_nonce( 'wp_rest' ),
     158            ]
     159        );
     160    }
    106161}
  • better-file-name/tags/1.4.0/src/Generate_Alt_Text_Cli.php

    r3024634 r3070233  
    5757
    5858        $attachment_ids_chunks = array_chunk( $attachment_ids, 50 );
    59         $uploads               = wp_get_upload_dir();
    60         $base_dir              = $uploads['basedir'];
    61         unset( $attachment_ids, $query, $uploads );
     59        unset( $attachment_ids, $query );
    6260
    6361        $open_ai_wrapper = new Openai_Wrapper( $setting->get_openai_api_key(), $setting->get_dell_e_version() );
    6462
     63        $file_path                = new File_Path( $use );
    6564        $generated_alt_text_count = 0;
    6665        foreach ( $attachment_ids_chunks as $attachment_ids ) {
    6766            foreach ( $attachment_ids as $post_id ) {
    6867                WP_CLI::log( 'Processing attachment ID: ' . $post_id );
    69                 if ( wp_get_environment_type() !== 'production' || $use === 'data' ) {
    70                     $attachment_data = wp_get_attachment_metadata( $post_id );
    71                     if ( ! isset( $attachment_data['file'] ) ) {
    72                         continue;
    73                     }
    74                     $file_path = str_replace( basename( $attachment_data['file'] ), '', $attachment_data['file'] );
    75                     if ( isset( $attachment_data['sizes']['large'] ) ) {
    76                         $file_path = $base_dir . DIRECTORY_SEPARATOR . $file_path . $attachment_data['sizes']['large']['file'];
    77                     } else {
    78                         $file_path = $base_dir . DIRECTORY_SEPARATOR . $file_path . $attachment_data['file'];
    79                     }
    80                 } else {
    81                     [ $file_path ] = image_downsize( $post_id, 'thumbnail' );
    82                     if ( ! $file_path ) {
    83                         [ $file_path ] = image_downsize( $post_id, 'large' );
    84                     }
    85                     if ( ! $file_path ) {
    86                         $file_path = wp_get_attachment_url( $post_id );
    87                     }
    88                 }
     68                $file_path = $file_path->get_image_path( $post_id );
    8969                if ( ! $dry_run && $setting->get_openai_api_key() ) {
    9070                    try {
  • better-file-name/tags/1.4.0/src/Openai_Wrapper.php

    r3024634 r3070233  
    7373                'headers' => $headers,
    7474                'body'    => wp_json_encode( $data ),
    75                 'timeout' => 10,
     75                'timeout' => defined( 'WP_CLI' ) && WP_CLI ? 30 : 15,
    7676            ]
    7777        );
  • better-file-name/tags/1.4.0/vendor/composer/autoload_classmap.php

    r3024634 r3070233  
    88return array(
    99    'Better_File_Name_Ai\\Admin' => $baseDir . '/src/Admin.php',
     10    'Better_File_Name_Ai\\Alt_Text_Rest_Api' => $baseDir . '/src/Alt_Text_Rest_Api.php',
    1011    'Better_File_Name_Ai\\Dalle_Image_Generator' => $baseDir . '/src/Dalle_Image_Generator.php',
     12    'Better_File_Name_Ai\\File_Path' => $baseDir . '/src/File_Path.php',
    1113    'Better_File_Name_Ai\\Generate_Alt_Text_Cli' => $baseDir . '/src/Generate_Alt_Text_Cli.php',
    1214    'Better_File_Name_Ai\\Image' => $baseDir . '/src/Image.php',
  • better-file-name/tags/1.4.0/vendor/composer/autoload_static.php

    r3024634 r3070233  
    2323    public static $classMap = array (
    2424        'Better_File_Name_Ai\\Admin' => __DIR__ . '/../..' . '/src/Admin.php',
     25        'Better_File_Name_Ai\\Alt_Text_Rest_Api' => __DIR__ . '/../..' . '/src/Alt_Text_Rest_Api.php',
    2526        'Better_File_Name_Ai\\Dalle_Image_Generator' => __DIR__ . '/../..' . '/src/Dalle_Image_Generator.php',
     27        'Better_File_Name_Ai\\File_Path' => __DIR__ . '/../..' . '/src/File_Path.php',
    2628        'Better_File_Name_Ai\\Generate_Alt_Text_Cli' => __DIR__ . '/../..' . '/src/Generate_Alt_Text_Cli.php',
    2729        'Better_File_Name_Ai\\Image' => __DIR__ . '/../..' . '/src/Image.php',
  • better-file-name/tags/1.4.0/vendor/composer/installed.php

    r3070148 r3070233  
    22    'root' => array(
    33        'name' => 'patelutkarsh/better-file-name',
    4         'pretty_version' => '1.3.3',
    5         'version' => '1.3.3.0',
    6         'reference' => '140cf8958696f108e92a25a03f8e0d0166f6585a',
     4        'pretty_version' => '1.4.0',
     5        'version' => '1.4.0.0',
     6        'reference' => 'd9801337c9412bfda0d7ec7953cb5e25b995d481',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'patelutkarsh/better-file-name' => array(
    14             'pretty_version' => '1.3.3',
    15             'version' => '1.3.3.0',
    16             'reference' => '140cf8958696f108e92a25a03f8e0d0166f6585a',
     14            'pretty_version' => '1.4.0',
     15            'version' => '1.4.0.0',
     16            'reference' => 'd9801337c9412bfda0d7ec7953cb5e25b995d481',
    1717            'type' => 'wordpress-plugin',
    1818            'install_path' => __DIR__ . '/../../',
  • better-file-name/trunk/.gitattributes

    r3024634 r3070233  
    77package.json export-ignore
    88package-lock.json export-ignore
     9/.wordpress-org export-ignore
  • better-file-name/trunk/better-file-name.php

    r3070148 r3070233  
    77 * Author URI:      github.com/patelutkarsh
    88 * Text Domain:     better-file-name
    9  * Version:         1.3.3
     9 * Version:         1.4.0
    1010 * Requires PHP:    8.1
    1111 * License:         GPL-2.0-or-later
     
    3535$better_file_name_admin                 = new Admin( $better_file_name_settings, plugins_url( 'build', __FILE__ ) );
    3636$better_file_name_dalle_image_generator = new Dalle_Image_Generator( $better_file_name_settings );
     37$better_file_name_alt_text_rest_api     = new Better_File_Name_Ai\Alt_Text_Rest_Api( $better_file_name_settings );
    3738
    3839if ( defined( 'WP_CLI' ) && WP_CLI ) {
  • better-file-name/trunk/readme.md

    r3024634 r3070233  
    1313</div>
    1414
     15### Additional features:
    1516
    16 ### Additional features:
    17 - Allows generating featured image using dall-e-2 or dall-e-3 API.
     17-   Allows generating featured image using dall-e-2 or dall-e-3 API.
    1818
    1919> Note: GPT-4 Vision is in preview, It is not recommended to use this plugin on a production site.
    2020
    2121## Demo:
     22
    2223https://github.com/PatelUtkarsh/better-file-name-ai/assets/5015489/1f0ce636-ceeb-4e6e-918b-872d3069d40f
    23 
    2424
    2525## Installation
  • better-file-name/trunk/readme.txt

    r3070148 r3070233  
    66Tested up to: 6.4.1
    77Requires PHP: 8.1
    8 Stable tag: 1.3.3
     8Stable tag: 1.4.0
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
  • better-file-name/trunk/src/Admin.php

    r3024634 r3070233  
    1818            return;
    1919        }
     20
     21        if ( defined( 'WP_IMPORTING' ) && WP_IMPORTING ) {
     22            return;
     23        }
     24
    2025        if ( $this->settings->get_rename_file() ) {
    2126            add_filter( 'wp_handle_sideload_prefilter', [ $this, 'rename_new_file' ], 9999 );
     
    2429
    2530        if ( $this->settings->should_generate_alt_text() ) {
    26             add_filter( 'wp_update_attachment_metadata', [ $this, 'update_alt_text' ], 10, 2 );
     31            add_filter( 'wp_update_attachment_metadata', $this->update_alt_text( ... ), 10, 2 );
     32            add_filter( 'attachment_fields_to_edit', $this->attachment_fields_to_edit( ... ), 10, 2 );
     33            add_action( 'wp_enqueue_media', $this->enqueue_media( ... ) );
    2734        }
    2835
     
    104111        );
    105112    }
     113
     114    /**
     115     * Add custom field to media attachment
     116     *
     117     * @param array  $form_fields Form fields.
     118     * @param object $post        WP_Post object.
     119     *
     120     * @return array
     121     */
     122    public function attachment_fields_to_edit( $form_fields, $post ) {
     123        if ( ! str_starts_with( $post->post_mime_type, 'image' ) ) {
     124            return $form_fields;
     125        }
     126
     127        $form_fields['alt-text-generator'] = [
     128            'input' => 'html',
     129            'html'  => sprintf( '<button class="button generate-alt-text" data-media-id="%d">%s</button><span class="generate-alt-text__loading hidden">%s</span><span class="spinner"></span>', $post->ID, __( 'Generate alt text', 'better-file-name' ), esc_html__( 'Generating alt text...', 'better-file-name' ) ),
     130            'label' => '',
     131        ];
     132
     133        return $form_fields;
     134    }
     135
     136    public function enqueue_media() {
     137        $version_file = __DIR__ . '/../build/media-alt-text.asset.php';
     138        if ( ! file_exists( $version_file ) ) {
     139            return;
     140        }
     141        $version = include $version_file;
     142        wp_enqueue_script(
     143            'better-file-name-ai-media',
     144            $this->plugin_url . '/media-alt-text.js',
     145            $version['dependencies'],
     146            $version['version'],
     147            [
     148                'in_footer' => true,
     149            ]
     150        );
     151
     152        wp_localize_script(
     153            'better-file-name-ai-media',
     154            'betterFileName',
     155            [
     156                'api'   => rest_url( 'better-file-name/v1/alt-text-generator' ),
     157                'nonce' => wp_create_nonce( 'wp_rest' ),
     158            ]
     159        );
     160    }
    106161}
  • better-file-name/trunk/src/Generate_Alt_Text_Cli.php

    r3024634 r3070233  
    5757
    5858        $attachment_ids_chunks = array_chunk( $attachment_ids, 50 );
    59         $uploads               = wp_get_upload_dir();
    60         $base_dir              = $uploads['basedir'];
    61         unset( $attachment_ids, $query, $uploads );
     59        unset( $attachment_ids, $query );
    6260
    6361        $open_ai_wrapper = new Openai_Wrapper( $setting->get_openai_api_key(), $setting->get_dell_e_version() );
    6462
     63        $file_path                = new File_Path( $use );
    6564        $generated_alt_text_count = 0;
    6665        foreach ( $attachment_ids_chunks as $attachment_ids ) {
    6766            foreach ( $attachment_ids as $post_id ) {
    6867                WP_CLI::log( 'Processing attachment ID: ' . $post_id );
    69                 if ( wp_get_environment_type() !== 'production' || $use === 'data' ) {
    70                     $attachment_data = wp_get_attachment_metadata( $post_id );
    71                     if ( ! isset( $attachment_data['file'] ) ) {
    72                         continue;
    73                     }
    74                     $file_path = str_replace( basename( $attachment_data['file'] ), '', $attachment_data['file'] );
    75                     if ( isset( $attachment_data['sizes']['large'] ) ) {
    76                         $file_path = $base_dir . DIRECTORY_SEPARATOR . $file_path . $attachment_data['sizes']['large']['file'];
    77                     } else {
    78                         $file_path = $base_dir . DIRECTORY_SEPARATOR . $file_path . $attachment_data['file'];
    79                     }
    80                 } else {
    81                     [ $file_path ] = image_downsize( $post_id, 'thumbnail' );
    82                     if ( ! $file_path ) {
    83                         [ $file_path ] = image_downsize( $post_id, 'large' );
    84                     }
    85                     if ( ! $file_path ) {
    86                         $file_path = wp_get_attachment_url( $post_id );
    87                     }
    88                 }
     68                $file_path = $file_path->get_image_path( $post_id );
    8969                if ( ! $dry_run && $setting->get_openai_api_key() ) {
    9070                    try {
  • better-file-name/trunk/src/Openai_Wrapper.php

    r3024634 r3070233  
    7373                'headers' => $headers,
    7474                'body'    => wp_json_encode( $data ),
    75                 'timeout' => 10,
     75                'timeout' => defined( 'WP_CLI' ) && WP_CLI ? 30 : 15,
    7676            ]
    7777        );
  • better-file-name/trunk/vendor/composer/autoload_classmap.php

    r3024634 r3070233  
    88return array(
    99    'Better_File_Name_Ai\\Admin' => $baseDir . '/src/Admin.php',
     10    'Better_File_Name_Ai\\Alt_Text_Rest_Api' => $baseDir . '/src/Alt_Text_Rest_Api.php',
    1011    'Better_File_Name_Ai\\Dalle_Image_Generator' => $baseDir . '/src/Dalle_Image_Generator.php',
     12    'Better_File_Name_Ai\\File_Path' => $baseDir . '/src/File_Path.php',
    1113    'Better_File_Name_Ai\\Generate_Alt_Text_Cli' => $baseDir . '/src/Generate_Alt_Text_Cli.php',
    1214    'Better_File_Name_Ai\\Image' => $baseDir . '/src/Image.php',
  • better-file-name/trunk/vendor/composer/autoload_static.php

    r3024634 r3070233  
    2323    public static $classMap = array (
    2424        'Better_File_Name_Ai\\Admin' => __DIR__ . '/../..' . '/src/Admin.php',
     25        'Better_File_Name_Ai\\Alt_Text_Rest_Api' => __DIR__ . '/../..' . '/src/Alt_Text_Rest_Api.php',
    2526        'Better_File_Name_Ai\\Dalle_Image_Generator' => __DIR__ . '/../..' . '/src/Dalle_Image_Generator.php',
     27        'Better_File_Name_Ai\\File_Path' => __DIR__ . '/../..' . '/src/File_Path.php',
    2628        'Better_File_Name_Ai\\Generate_Alt_Text_Cli' => __DIR__ . '/../..' . '/src/Generate_Alt_Text_Cli.php',
    2729        'Better_File_Name_Ai\\Image' => __DIR__ . '/../..' . '/src/Image.php',
  • better-file-name/trunk/vendor/composer/installed.php

    r3070148 r3070233  
    22    'root' => array(
    33        'name' => 'patelutkarsh/better-file-name',
    4         'pretty_version' => '1.3.3',
    5         'version' => '1.3.3.0',
    6         'reference' => '140cf8958696f108e92a25a03f8e0d0166f6585a',
     4        'pretty_version' => '1.4.0',
     5        'version' => '1.4.0.0',
     6        'reference' => 'd9801337c9412bfda0d7ec7953cb5e25b995d481',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'patelutkarsh/better-file-name' => array(
    14             'pretty_version' => '1.3.3',
    15             'version' => '1.3.3.0',
    16             'reference' => '140cf8958696f108e92a25a03f8e0d0166f6585a',
     14            'pretty_version' => '1.4.0',
     15            'version' => '1.4.0.0',
     16            'reference' => 'd9801337c9412bfda0d7ec7953cb5e25b995d481',
    1717            'type' => 'wordpress-plugin',
    1818            'install_path' => __DIR__ . '/../../',
Note: See TracChangeset for help on using the changeset viewer.