Merge pull request #4390 from pixelfed/staging

Staging
This commit is contained in:
daniel 2023-05-17 04:45:57 -06:00 committed by GitHub
commit 6db781aa91
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -24,56 +24,86 @@ class AutospamUpdateCachedDataPipeline implements ShouldQueue
{ {
} }
/** /**
* Execute the job. * Execute the job.
*/ */
public function handle(): void public function handle(): void
{ {
$spam = json_decode(Storage::get(AutospamService::MODEL_SPAM_PATH), true); $spamExists = Storage::exists(AutospamService::MODEL_SPAM_PATH);
$newSpam = AutospamCustomTokens::whereCategory('spam')->get(); if($spamExists) {
foreach($newSpam as $ns) { $spam = json_decode(Storage::get(AutospamService::MODEL_SPAM_PATH), true);
$key = strtolower($ns->token); } else {
if(isset($spam['words']['spam'][$key])) { $spam = [
$spam['words']['spam'][$key] = $spam['words']['spam'][$key] + $ns->weight; 'documents' => [
} else { 'spam' => 0
$spam['words']['spam'][$key] = $ns->weight; ],
} 'words' => [
} 'spam' => []
$newSpamCount = count($spam['words']['spam']); ]
$spam['documents']['spam'] = $newSpamCount; ];
arsort($spam['words']['spam']); }
Storage::put(AutospamService::MODEL_SPAM_PATH, json_encode($spam, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT)); $newSpam = AutospamCustomTokens::whereCategory('spam')->get();
foreach($newSpam as $ns) {
$key = strtolower($ns->token);
if(isset($spam['words']['spam'][$key])) {
$spam['words']['spam'][$key] = $spam['words']['spam'][$key] + $ns->weight;
} else {
$spam['words']['spam'][$key] = $ns->weight;
}
}
$newSpamCount = count($spam['words']['spam']);
if($newSpamCount) {
$spam['documents']['spam'] = $newSpamCount;
arsort($spam['words']['spam']);
Storage::put(AutospamService::MODEL_SPAM_PATH, json_encode($spam, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT));
}
$ham = json_decode(Storage::get(AutospamService::MODEL_HAM_PATH), true); $hamExists = Storage::exists(AutospamService::MODEL_HAM_PATH);
$newHam = AutospamCustomTokens::whereCategory('ham')->get(); if($hamExists) {
foreach($newHam as $ns) { $ham = json_decode(Storage::get(AutospamService::MODEL_HAM_PATH), true);
$key = strtolower($ns->token); } else {
if(isset($spam['words']['ham'][$key])) { $ham = [
$ham['words']['ham'][$key] = $ham['words']['ham'][$key] + $ns->weight; 'documents' => [
} else { 'ham' => 0
$ham['words']['ham'][$key] = $ns->weight; ],
} 'words' => [
} 'ham' => []
]
];
}
$newHam = AutospamCustomTokens::whereCategory('ham')->get();
foreach($newHam as $ns) {
$key = strtolower($ns->token);
if(isset($spam['words']['ham'][$key])) {
$ham['words']['ham'][$key] = $ham['words']['ham'][$key] + $ns->weight;
} else {
$ham['words']['ham'][$key] = $ns->weight;
}
}
$newHamCount = count($ham['words']['ham']); $newHamCount = count($ham['words']['ham']);
$ham['documents']['ham'] = $newHamCount; if($newHamCount) {
arsort($ham['words']['ham']); $ham['documents']['ham'] = $newHamCount;
arsort($ham['words']['ham']);
Storage::put(AutospamService::MODEL_HAM_PATH, json_encode($ham, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT));
}
Storage::put(AutospamService::MODEL_HAM_PATH, json_encode($ham, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT)); if($newSpamCount && $newHamCount) {
$combined = [
'documents' => [
'spam' => $newSpamCount,
'ham' => $newHamCount,
],
'words' => [
'spam' => $spam['words']['spam'],
'ham' => $ham['words']['ham']
]
];
$combined = [ Storage::put(AutospamService::MODEL_FILE_PATH, json_encode($combined, JSON_PRETTY_PRINT,JSON_UNESCAPED_SLASHES));
'documents' => [ }
'spam' => $newSpamCount,
'ham' => $newHamCount,
],
'words' => [
'spam' => $spam['words']['spam'],
'ham' => $ham['words']['ham']
]
];
Storage::put(AutospamService::MODEL_FILE_PATH, json_encode($combined, JSON_PRETTY_PRINT,JSON_UNESCAPED_SLASHES)); Cache::forget(AutospamService::MODEL_CACHE_KEY);
Cache::forget(AutospamService::MODEL_CACHE_KEY); Cache::forget(AutospamService::CHCKD_CACHE_KEY);
Cache::forget(AutospamService::CHCKD_CACHE_KEY); }
}
} }