summaryrefslogtreecommitdiff
path: root/rt/etc/upgrade/4.1.0/content
blob: 2a02c68237fc601005dd344921da4c7b20b74744 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
use strict;
use warnings;

our @Initial = (
    sub {
        my $users = RT::Users->new(RT->SystemUser);
        my $attributes = $users->Join(
            ALIAS1 => "main",
            FIELD1 => "id",
            TABLE2 => "Attributes",
            FIELD2 => "ObjectId",
        );
        $users->Limit(
            ALIAS => $attributes,
            FIELD => "ObjectType",
            VALUE => "RT::User",
        );
        $users->Limit(
            ALIAS => $attributes,
            FIELD => "Name",
            VALUE => RT::User::_PrefName('HomepageSettings'),
        );

        while (my $user = $users->Next) {
            my $settings = $user->Preferences('HomepageSettings')
                or next;
            next if exists $settings->{sidebar};

            $settings->{sidebar} = delete $settings->{summary};
            $user->SetPreferences('HomepageSettings', $settings);
        }
    },
    sub {
        my ($default_portlets) = RT->System->Attributes->Named('HomepageSettings');
        my $settings = $default_portlets->Content;
        return if exists $settings->{sidebar};

        $settings->{sidebar} = delete $settings->{summary};
        $default_portlets->SetContent($settings);
    },
);