Current File : /home/n742ef5/royalanteam.com/wp-content/plugins/myhome-core/src/Providers/DemosServiceProvider.php |
<?php
namespace Tangibledesign\MyHome\Providers;
use Elementor\Plugin;
use Tangibledesign\Framework\Core\ServiceProvider;
use Tangibledesign\Framework\Models\Field\GalleryField;
use Tangibledesign\Framework\Models\Payments\BaseUserPaymentPackage;
class DemosServiceProvider extends ServiceProvider
{
public function afterInitiation(): void
{
add_action('myhome/demoImporter/checkGalleries', [$this, 'checkGalleries']);
add_action('myhome/demoImporter/finished', [$this, 'demoImporter']);
}
public function demoImporter(): void
{
$this->fixElementor();
$this->adjustSettings();
$this->deleteUserPackages();
}
private function deleteUserPackages(): void
{
tdf_query_user_payment_packages()->get()->each(function ($userPaymentPackage) {
/* @var BaseUserPaymentPackage $userPaymentPackage */
$userPaymentPackage->delete();
});
}
private function adjustSettings(): void
{
tdf_settings()->setUserRegistration(0);
tdf_settings()->setEnablePayments(0);
tdf_settings()->save();
}
private function fixElementor(): void
{
$kit = Plugin::instance()->kits_manager->get_active_kit_for_frontend();
if (!$kit) {
return;
}
$kit->set_settings('space_between_widgets', [
"column" => "0",
"row" => "0",
"isLinked" => true,
"unit" => "px",
"size" => 0,
"sizes" => []
]);
$kit->save(['settings' => $kit->get_settings()]);
}
public function checkGalleries(): void
{
$galleryField = tdf_gallery_fields()->first();
if (!$galleryField instanceof GalleryField) {
return;
}
foreach (tdf_query_models() as $listing) {
$gallery = $galleryField->getValue($listing);
foreach ($gallery as $key => $imageId) {
$post = get_post($imageId);
if (!$post) {
unset($gallery[$key]);
}
}
$galleryField->setValue($listing, $gallery);
}
foreach (tdf_embed_fields() as $embedField) {
$embedField->setAllowRawHtml(0);
}
}
}