Passed
Push — master ( 2da942...d633d7 )
by Paul
15:03 queued 05:40
created

Migrate_5_0_0::run()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 5
dl 0
loc 7
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
crap 1
1
<?php
2
3
namespace GeminiLabs\SiteReviews\Modules\Migrations;
4
5
use GeminiLabs\SiteReviews\Database\OptionManager;
6
use GeminiLabs\SiteReviews\Modules\Migrations\Migrate_5_0_0\MigrateReviews;
7
use GeminiLabs\SiteReviews\Modules\Migrations\Migrate_5_0_0\MigrateSidebars;
8
9
class Migrate_5_0_0
10
{
11
    /**
12
     * @return void
13
     */
14 7
    public function migrateWpOptions()
15
    {
16 7
        if ($trustalyze = glsr(OptionManager::class)->getWP('_glsr_trustalyze')) {
17
            update_option(glsr()->prefix.'trustalyze', $trustalyze);
18
            delete_option('_glsr_trustalyze');
19
        }
20 7
        delete_option('widget_site-reviews');
21 7
        delete_option('widget_site-reviews-form');
22 7
        delete_option('widget_site-reviews-summary');
23 7
        delete_option(glsr()->id.'activated');
24 7
        delete_transient(glsr()->id.'_cloudflare_ips');
25 7
        delete_transient(glsr()->id.'_remote_post_test');
26 7
    }
27
28
    /**
29
     * @return void
30
     */
31 7
    public function migrateSettings()
32
    {
33 7
        if ($settings = get_option(OptionManager::databaseKey(4))) {
34
            update_option(OptionManager::databaseKey(5), $settings);
35
        }
36
        $optionKeys = [
37 7
            'settings.general.trustalyze' => 'settings.addons.trustalyze.enabled',
38
            'settings.general.trustalyze_email' => 'settings.addons.trustalyze.email',
39
            'settings.general.trustalyze_serial' => 'settings.addons.trustalyze.serial',
40
        ];
41 7
        foreach ($optionKeys as $oldKey => $newKey) {
42 7
            $oldValue = glsr(OptionManager::class)->get($oldKey);
43 7
            $newValue = glsr(OptionManager::class)->get($newKey);
44 7
            if ($oldValue && empty($newValue)) {
45
                glsr(OptionManager::class)->set($newKey, $oldValue);
46
            }
47 7
            glsr(OptionManager::class)->delete($oldKey);
48
        }
49 7
        glsr(OptionManager::class)->delete('counts');
50 7
        glsr(OptionManager::class)->delete('last_review_count');
51 7
    }
52
53
    /**
54
     * @return bool
55
     */
56 7
    public function run()
57
    {
58 7
        $this->migrateSettings();
59 7
        $this->migrateWpOptions();
60 7
        glsr(MigrateSidebars::class)->run();
61 7
        glsr(MigrateReviews::class)->run();
62 7
        return true;
63
    }
64
}
65