Completed
Pull Request — 2.0 (#117)
by Jason
05:08
created

SlidePublishTask::publishSlides()   B

Complexity

Conditions 5
Paths 5

Size

Total Lines 17
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 17
rs 8.8571
c 0
b 0
f 0
cc 5
eloc 12
nc 5
nop 0
1
<?php
2
3
class SlidePublishTask extends BuildTask
4
{
5
    /**
6
     * @var string
7
     */
8
    protected $title = 'Publish all SlideImages';
9
    /**
10
     * @var string
11
     */
12
    protected $description = 'Migration task - pre versioning on SlideImage';
13
    /**
14
     * @var bool
15
     */
16
    protected $enabled = true;
17
    /**
18
     * @param $request
19
     */
20
    public function run($request)
21
    {
22
        $this->publishSlides();
23
    }
24
    /**
25
     * mark all ProductDetail records as ShowInMenus = 0.
26
     */
27
    public function publishSlides()
28
    {
29
        $slides = SlideImage::get();
30
        $ct = 0;
31
        foreach ($slides as $slide) {
32
            if ($slide->ShowSlide == 1) {
33
                if (!$slide->Name) {
34
                    $slide->Name = ($slide->Headline) ? $slide->Headline : 'New Slide';
35
                }
36
                $slide->writeToStage('Stage');
37
                $slide->publish('Stage', 'Live');
38
                echo '<p>' . $slide->Name . '</p>';
39
                ++$ct;
40
            }
41
        }
42
        echo '<h3>'.$ct.' slides updated.</h3>';
43
    }
44
}