制作WordPress.org

变更集8937


忽略:
时间戳:
2019年10月6日下午02:45:10(5年(之前)
作者:
海洋90
消息:

翻译:将批准的翻译发送到翻译存储器。

道具尤夫,海洋90。
请参见#4430.

地点:
sites/trunk/wordpress.org/public_html/wp-content/plugins
文件夹:
5已编辑

图例:

未修改
补充
远离的
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-customizations/templates/translation-row-editor.php

    8766兰特 8937兰特  
    7676<div class=“button-menu”>
    7777<button type=“button”class=“button-manu__toggle with tooltip”aria label=“显示上下文链接”>
    78 链接-回形针“>”</span>
     78链接-菜单-alt“>”</span>
    7979</按钮>
    8080<ul class=“button-min__dropdown”>
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-plugin-directory/inc/cli/class-sync-plugin-translations.php

    第4018期 8937兰特  
    1414
    1515    /**
    16      *删除插件项目及其翻译。
     16     *同步插件翻译。
    1717     *
    1818*##选项
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-translation-suggements/inc/class-plugin.php

    8767兰特 8937兰特  
    55使用GP;
    66使用GP_Locales;
    7 使用Text_Diff;
    8 使用WP_Error;
    9 使用WP_Http;
    10 使用WP_Text_Diff_Render_inline;
    11 
    12 需要一次ABSPATH。”/wp-includes/wp-diff.php';
    137
    148类插件{
     9
     10const TM_UPDATE_EVENT='wporg_translate_TM_UPDATE';
    1511
    1612    /**
     
    1814     */
    1915私有静态$instance;
     16
     17    /**
     18*@var数组
     19     */
     20私有$queue=[];
    2021
    2122    /**
     
    4546add_action(“gp_pre_tmpl_load”,[$this,“pre_tmpl_noad”],10,2);
    4647add_action('wporg_translate_suggements',[$this,'extend_translation_suggetions']);
     48
     49if('cli'!==PHP_SAPI){
     50add_action('gp_translation_created',[$this,'translation_updated'],3);
     51add_action('gp_translation_saved',[$this,'translation_updated'],3);
     52
     53//数据库写入被延迟到关闭时,以便在导入期间批量更新统计信息。
     54add_action('关闭',[$this,'计划tm_update'],3);
     55        }
     56
     57add_action(self::TM_UPDATE_EVENT,[Translation_Memory_Client::class,'UPDATE']);
     58    }
     59
     60    /**
     61*创建翻译时在队列中添加翻译
     62*或更新。
     63     *
     64*@param\GP_Translation$Translation已创建/更新翻译。
     65     */
     66公共函数translation_updated($translation){
     67if(!$translation->userid | |'current'!==$translation->status){
     68回报;
     69        }
     70
     71$this->队列[$translation->original_id]=$translation->id;
     72    }
     73
     74    /**
     75*安排单个事件来更新新翻译的翻译内存。
     76     */
     77公共函数schedule_tm_update(){
     78remove_action('gp_translation_created',[$this,'translation_updated'],3);
     79remove_action('gp_translation_saved',[$this,'translation_updated'],3);
     80
     81if(!$this->队列){
     82回报;
     83        }
     84
     85wp_schedule_single_event(time()+60,self::TM_UPDATE_event,['translations'=>$this->queue]);
    4786    }
    4887
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-translation-suggements/inc/class-translation-memory-client.php

    8732兰特 8937兰特  
    命名空间WordPressdotorg\GlotPress\TranslationSuggestions;
    44
     5使用GP;
    56使用Text_Diff;
    67使用WP_Error;
     
    89使用WP_Text_Diff_Render_inline;
    910
    10 需要一次ABSPATH。'/wp-includes/wp-diff.php“ ;
     11需要一次ABSPATH。”/wp-includes/wp-diff.php“;
    1112
    1213类Translation_Memory_Client{
    1314
    1415常量API_ENDPOINT='https://translate.wordpress.com/api/tm/';
     16常量API_BULK_ENDPOINT='https://translate.wordpress.com/api/tm/bulk(https://translate.wordpress.com/api/tm/bulk)';
     17
     18    /**
     19*使用新字符串更新翻译内存。
     20     *
     21*@param array$translations由原始ID键入的翻译ID列表。
     22*@return true|\WP_Error成功时为true,失败时为WP_Error。
     23     */
     24公共静态函数更新(数组$translations){
     25$请求=[];
     26
     27foreach($translations作为$original_id=>$translation _id){
     28$translation=GP::$translation->get($translation_id);
     29
     30//如果翻译发生更改,请再次检查。
     31if('current'!==$translation->status){
     32继续;
     33            }
     34
     35$original=GP::$original->get($originali_id);
     36$translation_set=GP::$translation设置->获取($translate->translation_set_id);
     37
     38$locale=$translation_set->locale;
     39if('default'!==$translation_set->slug){
     40$locale.='_'$translation_set->slug;
     41            }
     42
     43$个请求[]=[
     44“source”=>$original->fields(),
     45“翻译”=>[
     46                    [
     47“单数”=>$translation->translation_0,
     48“复数”=>$translation->translation_1,
     49“locale”=>$locale,
     50                    ],
     51                ],
     52            ];
     53        }
     54
     55if(!$请求){
     56return new WP_Error('no_translations');
     57        }
     58
     59$body=wp_json_encode([
     60“标记”=>WPCOM_TM_token,
     61“请求”=>$requests,
     62        ] );
     63
     64$request=wp_remote_post(
     65自身::API_BULK_ENDPOINT,
     66            [
     67“超时”=>10,
     68“user-agent”=>“WordPress.org翻译”,
     69“body”=>$body,
     70            ]
     71        );
     72
     73if(is_wp_error($request)){
     74return$request;
     75        }
     76
     77if(WP_Http::确定!==WP_remote_retrieve_response_code($request)){
     78返回新的WP_Error('response_code_not_ok');
     79        }
     80
     81$body=wp_remote_retrieve_body($request);
     82$result=json_decode($body,true);
     83
     84if(JSON_ERROR_NONE!==JSON_last_ERROR()){
     85return new WP_Error('json_parse_Error');
     86        }
     87
     88返回$result?:新WP_Error('unknown_Error');
     89    }
    1590
    1691    /**
     
    2297     */
    2398公共静态函数查询(字符串$text,字符串$target_locale){
    24 if(!已定义 (“WPCOM_TM_TOKEN”){
     99if(!已定义('WPCOM_TM_TOKEN')){
    25100return new WP_Error('no_token');
    26101        }
     
    30105“target”=>$target_locale,
    31106“标记”=>WPCOM_TM_token,
    32 ]),自身::API_ENDPOINT);
     107'ts'=>time(),
     108]),自身::API_ENDPOINT);
     109
    33110
    34111$request=wp_remote_get(
    35112$url,
    36113            [
    37 '超时' => 2,
    38 '用户代理' =>“WordPress.org翻译”,
     114'超时'=> 2,
     115'用户代理'=>“WordPress.org翻译”,
    39116            ]
    40117        );
     
    82159$diff=新的Text_diff('auto',[[$previous_Text],[$Text]]);
    83160$renderer=新WP_Text_Diff_Render_inline();
     161
    84162返回$renderer->render($diff);
    85163    }
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-translation-suggements/js/translation-Suggements.js

    r8766 8937兰特  
    77“nonce”:nonce
    88            },
    9 数据类型:“json”
     9dataType:“json”,
     10缓存:false,
    1011        } );
    1112
注:请参见TracChangeset(跟踪变更集)获取有关使用变更集查看器的帮助。