Completed
Push — 2.0 ( 5fd6e8...1326bb )
by Jason
12s
created

SlidePublishTask   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 6
lcom 0
cbo 2
dl 0
loc 42
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A run() 0 4 1
B publishSlides() 0 17 5
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
}