ACIL FM
Dark
Refresh
Current DIR:
/home/mhhtmff/www/site/wp-content/plugins/sitepress-multilingual-cms/classes/ATE
/
home
mhhtmff
www
site
wp-content
plugins
sitepress-multilingual-cms
classes
ATE
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
API
-
chmod
Open
Rename
Delete
auto-translate
-
chmod
Open
Rename
Delete
Download
-
chmod
Open
Rename
Delete
Hooks
-
chmod
Open
Rename
Delete
Log
-
chmod
Open
Rename
Delete
models
-
chmod
Open
Rename
Delete
proxies
-
chmod
Open
Rename
Delete
REST
-
chmod
Open
Rename
Delete
Retry
-
chmod
Open
Rename
Delete
Review
-
chmod
Open
Rename
Delete
sitekey
-
chmod
Open
Rename
Delete
Sync
-
chmod
Open
Rename
Delete
TranslateEverything
-
chmod
Open
Rename
Delete
class-wpml-tm-ams-ate-factories.php
852 B
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ams-translator-activation-records.php
1.02 MB
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ams-users.php
578 B
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ate-ams-endpoints.php
12.67 MB
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ate-job.php
229 B
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ate-jobs.php
4.19 MB
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ate-status.php
922 B
chmod
View
DL
Edit
Rename
Delete
class-wpml-tm-ate.php
2.73 MB
chmod
View
DL
Edit
Rename
Delete
JobRecord.php
783 B
chmod
View
DL
Edit
Rename
Delete
JobRecords.php
4.31 MB
chmod
View
DL
Edit
Rename
Delete
Jobs.php
3.7 MB
chmod
View
DL
Edit
Rename
Delete
Loader.php
9.41 MB
chmod
View
DL
Edit
Rename
Delete
NoCreditPopup.php
1.56 MB
chmod
View
DL
Edit
Rename
Delete
ReturnedJobsQueue.php
2.4 MB
chmod
View
DL
Edit
Rename
Delete
StatusBar.php
1.42 MB
chmod
View
DL
Edit
Rename
Delete
StatusIcons.php
1.71 MB
chmod
View
DL
Edit
Rename
Delete
SyncLock.php
526 B
chmod
View
DL
Edit
Rename
Delete
TranslateEverything.php
5.35 MB
chmod
View
DL
Edit
Rename
Delete
Edit file: /home/mhhtmff/www/site/wp-content/plugins/sitepress-multilingual-cms/classes/ATE/Loader.php
<?php namespace WPML\TM\ATE; use WPML\Element\API\Languages; use WPML\TM\API\ATE\CachedLanguageMappings; use WPML\API\Settings; use WPML\Core\BackgroundTask\Model\BackgroundTask; use WPML\Core\BackgroundTask\Repository\BackgroundTaskRepository; use WPML\DocPage; use WPML\FP\Fns; use WPML\FP\Logic; use WPML\FP\Lst; use WPML\FP\Obj; use WPML\FP\Relation; use WPML\LIB\WP\Hooks; use WPML\LIB\WP\User; use WPML\Posts\UntranslatedCount; use WPML\Setup\Option; use WPML\TM\ATE\AutoTranslate\Endpoint\AutoTranslate; use WPML\TM\ATE\AutoTranslate\Endpoint\CancelJobs; use WPML\TM\ATE\AutoTranslate\Endpoint\CountJobsInProgress; use WPML\TM\ATE\AutoTranslate\Endpoint\EnableATE; use WPML\TM\ATE\AutoTranslate\Endpoint\GetATEJobsToSync; use WPML\TM\ATE\AutoTranslate\Endpoint\GetCredits; use WPML\TM\ATE\AutoTranslate\Endpoint\GetStatus; use WPML\TM\ATE\AutoTranslate\Endpoint\RefreshJobsStatus; use WPML\TM\ATE\AutoTranslate\Endpoint\SyncLock; use WPML\TM\ATE\AutoTranslate\Endpoint\Languages as EndpointLanguages; use WPML\TM\ATE\Download\Queue; use WPML\TM\ATE\Sync\Trigger; use WPML\TM\ATE\TranslateEverything\Pause\View as PauseTranslateEverything; use WPML\Core\WP\App\Resources; use WPML\UIPage; use function WPML\Container\make; use function WPML\FP\invoke; use function WPML\FP\pipe; class Loader implements \IWPML_Backend_Action, \IWPML_DIC_Action { const JOB_ID_PLACEHOLDER = '###'; /** @var BackgroundTaskRepository */ private $backgroundTaskRepository; /** * @param BackgroundTaskRepository $backgroundTaskRepository */ public function __construct( BackgroundTaskRepository $backgroundTaskRepository ) { $this->backgroundTaskRepository = $backgroundTaskRepository; } public function add_hooks() { if ( wpml_is_ajax() ) { // Prevent loading this for ajax calls. // All tasks of this class are not relevant for ajax requests. Currently it's loaded by the root plugin.php // which do not separate between ajax and non-ajax calls and loads this whenever is_admin() is true. // Problem: ALL ajax calls return true for is_admin() - also on the frontend and for non logged-in users. // TODO: Remove once wpmltm-4351 is done. return; } if ( UIPage::isTMJobs( $_GET ) ) { return; } $displayBackgroundTasks = $this->backgroundTaskRepository->getCountRunnableTasks() > 0; $maybeLoadStatusBarAndATEConsole = Fns::tap( function ( $data ) use ( $displayBackgroundTasks ) { if ( \WPML_TM_ATE_Status::is_enabled_and_activated() || Settings::pathOr( false, [ 'translation-management', 'doc_translation_method' ] ) === ICL_TM_TMETHOD_ATE || $displayBackgroundTasks ) { StatusBar::add_hooks( $data['data']['hasAutomaticJobsInProgress'], $data['data']['needsReviewCount'], $displayBackgroundTasks ); Hooks::onAction( 'in_admin_header' ) ->then( [ self::class, 'showAteConsoleContainer' ] ); } } ); Hooks::onAction( 'wp_loaded' ) ->then( [ self::class, 'getData' ] ) ->then( $maybeLoadStatusBarAndATEConsole ) ->then( Resources::enqueueApp( 'ate-jobs-sync' ) ) ->then( Fns::always( make( \WPML_TM_Scripts_Factory::class ) ) ) ->then( invoke( 'localize_script' )->with( 'wpml-ate-jobs-sync-ui' ) ); Hooks::onFilter( 'wpml_tm_get_wpml_auto_translate_container' ) ->then( [ self::class, 'getWpmlAutoTranslateContainer' ] ); } public static function getData() { $jobsToSync = Jobs::getJobsToSync(); $anyJobsExist = Jobs::isThereJob(); $ateTab = admin_url( UIPage::getTMATE() ); $isAteActive = \WPML_TM_ATE_Status::is_enabled_and_activated(); $defaultLanguage = Languages::getDefaultCode(); $getLanguages = pipe( Languages::class . '::getActive', CachedLanguageMappings::withCanBeTranslatedAutomatically(), CachedLanguageMappings::withMapping(), Fns::map( Obj::over( Obj::lensProp( 'mapping' ), Obj::prop( 'targetCode' ) ) ), Fns::map( Obj::addProp( 'is_default', Relation::propEq( 'code', $defaultLanguage ) ) ), Obj::values() ); return [ 'name' => 'ate_jobs_sync', 'data' => [ 'endpoints' => self::getEndpoints(), 'urls' => self::getUrls( $ateTab ), 'jobIdPlaceHolder' => self::JOB_ID_PLACEHOLDER, 'languages' => $isAteActive ? $getLanguages() : [], 'isTranslationManager' => User::canManageTranslations(), 'jobsToSync' => $jobsToSync, 'anyJobsExist' => $anyJobsExist, 'totalJobsCount' => Jobs::getTotal(), 'needsReviewCount' => count( Jobs::getJobsWithStatus( [ ICL_TM_NEEDS_REVIEW ] ) ), 'shouldTranslateEverything' => ! Option::isPausedTranslateEverything() && Option::shouldTranslateEverything() && ! TranslateEverything::isEverythingProcessed( true ), 'isPausedTranslateEverything' => Option::isPausedTranslateEverything() ? 1 : 0, 'isAutomaticTranslations' => Option::shouldTranslateEverything(), 'hasAutomaticJobsInProgress' => Logic::isNotEmpty( Fns::filter( Obj::prop( 'automatic' ), $jobsToSync ) ), 'isSyncRequired' => count( $jobsToSync ), 'strings' => self::getStrings(), 'ateConsole' => self::getAteData( Lst::pluck( 'ateJobId', $jobsToSync ) ), 'isAteActive' => $isAteActive, 'editorMode' => Settings::pathOr( false, [ 'translation-management', 'doc_translation_method' ] ), ], ]; } /** * @return string */ public static function getNotEnoughCreditPopup() { $isTranslationManager = User::canManageTranslations(); $content = $isTranslationManager ? __( "There is an issue with automatic translation that needs your attention.", 'wpml-translation-management' ) : __( " There is an issue with automatic translation that needs attention from a translation manager.", 'wpml-translation-management' ); $fix = __( 'Fix it to continue translating automatically', 'wpml-translation-management' ); $primaryButton = $isTranslationManager ? '<button class="wpml-antd-button wpml-antd-button-primary" onclick="CREDITS_ACTION">' . $fix . '</button>' : ''; $translate = __( 'Translate content myself', 'wpml-translation-management' ); $secondaryButton = UIPage::isTMDashboard( $_GET ) || ! $isTranslationManager ? '' : '<button class="wpml-antd-button wpml-antd-button-secondary" onclick="window.location.href=\'TRANSLATE_LINK\'">' . $translate . '</button>'; return '<div class="wpml-not-enough-credit-popup">' . '<p>' . $content . '</p>' . $primaryButton . $secondaryButton . '</div>'; } public static function showAteConsoleContainer() { echo '<div id="wpml-ate-console-container"></div>'; } public static function getWpmlAutoTranslateContainer() { return '<div id="wpml-auto-translate" style="display:none"> <div class="content"></div> <div class="connect"></div> </div>'; } private static function getAteData( $ateJobIds ) { if ( User::canManageTranslations() ) { /** @var NoCreditPopup $noCreditPopup */ $noCreditPopup = make( NoCreditPopup::class ); return $noCreditPopup->getData( $ateJobIds ); } return false; } private static function getEndpoints() { return [ 'auto-translate' => AutoTranslate::class, 'translate-everything' => TranslateEverything::class, 'getCredits' => GetCredits::class, 'enableATE' => EnableATE::class, 'getATEJobsToSync' => GetATEJobsToSync::class, 'syncLock' => SyncLock::class, 'pauseTranslateEverything' => PauseTranslateEverything::class, 'untranslatedCount' => UntranslatedCount::class, 'countAutomaticJobsInProgress' => CountJobsInProgress::class, 'languages' => EndpointLanguages::class, ]; } private static function getUrls( $ateTab ) { return [ 'editor' => \WPML_TM_Translation_Status_Display::get_link_for_existing_job( self::JOB_ID_PLACEHOLDER ), 'ateams' => $ateTab, 'automaticSettings' => \admin_url( UIPage::getSettings() ), 'translateAutomaticallyDoc' => DocPage::getTranslateAutomatically(), 'ateConsole' => make( NoCreditPopup::class )->getUrl(), 'translationQueue' => \add_query_arg( [ 'status' => ICL_TM_NEEDS_REVIEW ], \admin_url( UIPage::getTranslationQueue() ) ), 'currentUrl' => \WPML\TM\API\Jobs::getCurrentUrl(), 'editLanguages' => add_query_arg( [ 'trop' => 1 ], UIPage::getLanguages() ), ]; } private static function getStrings() { return [ 'tooltip' => __( 'Processing translation (could take a few minutes)', 'wpml-translation-management' ), 'refreshing' => __( 'Refreshing translation status', 'wpml-translation-management' ), 'inProgress' => __( 'Translation in progress', 'wpml-translation-management' ), 'editTranslation' => __( 'Edit translation', 'wpml-translation-management' ), 'status' => __( 'Processing translation', 'wpml-translation-management' ), 'automaticTranslation' => __( 'This content is being automatically translated. If you want to do something different with it cancel translation jobs first.', 'wpml-translation-management' ), 'notEnoughCredit' => self::getNotEnoughCreditPopup(), 'cancelled' => __( 'Translation has been cancelled', 'wpml-translation-management' ), ]; } }
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply