| | 322 | sub post_restore { |
|---|
| | 323 | my ( $plugin, $cb, $objects, $deferred, $errors, $callback ) = @_; |
|---|
| | 324 | |
|---|
| | 325 | foreach my $key ( keys %$objects ) { |
|---|
| | 326 | next unless $key =~ /^MT::PluginData#\d+$/; |
|---|
| | 327 | my $pd = $objects->{$key}; |
|---|
| | 328 | my $data = $pd->data; |
|---|
| | 329 | my $rebuild_triggers = $data->{rebuild_triggers} |
|---|
| | 330 | or next; |
|---|
| | 331 | my @restored; |
|---|
| | 332 | foreach my $trg_str ( split ( '\|', $rebuild_triggers ) ) { |
|---|
| | 333 | my ( $action, $id, $trigger ) = split ( ':', $trg_str ); |
|---|
| | 334 | if ( $id eq '_all' ) { |
|---|
| | 335 | push @restored, "$action:$id:$trigger"; |
|---|
| | 336 | } |
|---|
| | 337 | elsif ( my $new_obj = $objects->{'MT::Blog#' . $id} ) { |
|---|
| | 338 | push @restored, "$action:" . $new_obj->id . ":$trigger"; |
|---|
| | 339 | $callback->( |
|---|
| | 340 | $plugin->translate('Restoring MultiBlog rebuild trigger for blog #[_1]...', $id) |
|---|
| | 341 | ); |
|---|
| | 342 | } |
|---|
| | 343 | } |
|---|
| | 344 | if ( @restored ) { |
|---|
| | 345 | $data->{rebuild_triggers} = join ( '|', @restored ); |
|---|
| | 346 | $pd->data($data); |
|---|
| | 347 | $pd->save; |
|---|
| | 348 | } |
|---|
| | 349 | } |
|---|
| | 350 | } |
|---|