Completed
Pull Request — master (#109)
by Jason
06:12
created

SlidePublishTask   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 4
lcom 0
cbo 2
dl 0
loc 40
ccs 0
cts 15
cp 0
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A run() 0 4 1
A publishSlides() 0 15 3
1
<?php
2
3
namespace Dynamic\FlexSlider;
4
5
use SilverStripe\Dev\BuildTask;
6
7
class SlidePublishTask extends BuildTask
8
{
9
    /**
10
     * @var string
11
     */
12
    protected $title = 'Publish all SlideImages';
13
    /**
14
     * @var string
15
     */
16
    protected $description = 'Migration task - pre versioning on SlideImage';
17
    /**
18
     * @var bool
19
     */
20
    protected $enabled = true;
21
    /**
22
     * @param $request
23
     */
24
    public function run($request)
25
    {
26
        $this->publishSlides();
27
    }
28
    /**
29
     * mark all ProductDetail records as ShowInMenus = 0.
30
     */
31
    public function publishSlides()
32
    {
33
        $slides = SlideImage::get();
34
        $ct = 0;
35
        foreach ($slides as $slide) {
36
            if ($slide->ShowSlide == 1) {
37
                $title = $slide->Title;
38
                $slide->writeToStage('Stage');
39
                $slide->publish('Stage', 'Live');
40
                echo $title.'<br><br>';
41
                ++$ct;
42
            }
43
        }
44
        echo '<p>'.$ct.' slides updated.</p>';
45
    }
46
}