Passed
Pull Request — master (#28)
by Robbie
02:31
created
src/Extensions/CwpSearchBoostExtension.php 1 patch
Indentation   +41 added lines, -41 removed lines patch added patch discarded remove patch
@@ -12,45 +12,45 @@
 block discarded – undo
12 12
 class CwpSearchBoostExtension extends DataExtension
13 13
 {
14 14
 
15
-    /**
16
-     * Quality to boost the 'SearchBoost' field by.
17
-     * Default boost is 2x
18
-     *
19
-     * @config
20
-     * @var string
21
-     */
22
-    private static $search_boost = '2';
23
-
24
-    private static $db = array(
25
-        'SearchBoost' => 'Text'
26
-    );
27
-
28
-    /**
29
-     * Adds boost fields to this page
30
-     *
31
-     * @param FieldList $fields
32
-     */
33
-    public function updateCMSFields(FieldList $fields)
34
-    {
35
-        parent::updateCMSFields($fields);
36
-
37
-        // Rename metafield
38
-        $meta = $fields->fieldByName('Root.Main.Metadata');
39
-        $meta->setTitle(_t(__CLASS__ . '.PAGEINFO', 'Page info and SEO'));
40
-
41
-        $boostTitle = _t(__CLASS__ . '.SearchBoost', 'Boost Keywords');
42
-        $boostNote = _t(
43
-            __CLASS__ . '.SearchBoostNote',
44
-            '(Only applies to the search results on this site e.g. not on Google search)'
45
-        );
46
-        $boostDescription = _t(
47
-            __CLASS__ . '.SearchBoostDescription',
48
-            'Enter keywords separated by comma ( , ) for which to boost the ranking of this page '
49
-            . 'within the search results on this site.'
50
-        );
51
-        $boostField = TextareaField::create('SearchBoost', $boostTitle)
52
-            ->setRightTitle($boostNote)
53
-            ->setDescription($boostDescription);
54
-        $fields->insertBefore('MetaDescription', $boostField);
55
-    }
15
+	/**
16
+	 * Quality to boost the 'SearchBoost' field by.
17
+	 * Default boost is 2x
18
+	 *
19
+	 * @config
20
+	 * @var string
21
+	 */
22
+	private static $search_boost = '2';
23
+
24
+	private static $db = array(
25
+		'SearchBoost' => 'Text'
26
+	);
27
+
28
+	/**
29
+	 * Adds boost fields to this page
30
+	 *
31
+	 * @param FieldList $fields
32
+	 */
33
+	public function updateCMSFields(FieldList $fields)
34
+	{
35
+		parent::updateCMSFields($fields);
36
+
37
+		// Rename metafield
38
+		$meta = $fields->fieldByName('Root.Main.Metadata');
39
+		$meta->setTitle(_t(__CLASS__ . '.PAGEINFO', 'Page info and SEO'));
40
+
41
+		$boostTitle = _t(__CLASS__ . '.SearchBoost', 'Boost Keywords');
42
+		$boostNote = _t(
43
+			__CLASS__ . '.SearchBoostNote',
44
+			'(Only applies to the search results on this site e.g. not on Google search)'
45
+		);
46
+		$boostDescription = _t(
47
+			__CLASS__ . '.SearchBoostDescription',
48
+			'Enter keywords separated by comma ( , ) for which to boost the ranking of this page '
49
+			. 'within the search results on this site.'
50
+		);
51
+		$boostField = TextareaField::create('SearchBoost', $boostTitle)
52
+			->setRightTitle($boostNote)
53
+			->setDescription($boostDescription);
54
+		$fields->insertBefore('MetaDescription', $boostField);
55
+	}
56 56
 }
Please login to merge, or discard this patch.
src/Extensions/SynonymValidator.php 1 patch
Indentation   +150 added lines, -150 removed lines patch added patch discarded remove patch
@@ -6,154 +6,154 @@
 block discarded – undo
6 6
 
7 7
 class SynonymValidator extends Validator
8 8
 {
9
-    /**
10
-     * @var array
11
-     */
12
-    protected $fieldNames;
13
-
14
-    /**
15
-     * @inheritdoc
16
-     *
17
-     * @param array $fieldNames
18
-     */
19
-    public function __construct(array $fieldNames)
20
-    {
21
-        $this->fieldNames = $fieldNames;
22
-
23
-        parent::__construct();
24
-    }
25
-
26
-    /**
27
-     * @inheritdoc
28
-     *
29
-     * @param array $data
30
-     *
31
-     * @return mixed
32
-     */
33
-    public function php($data)
34
-    {
35
-        foreach ($this->fieldNames as $fieldName) {
36
-            if (empty($data[$fieldName])) {
37
-                return;
38
-            }
39
-
40
-            $this->validateField($fieldName, $data[$fieldName]);
41
-        }
42
-    }
43
-
44
-    /**
45
-     * Validate field values, raising errors if the values are invalid.
46
-     *
47
-     * @param string $fieldName
48
-     * @param mixed $value
49
-     */
50
-    protected function validateField($fieldName, $value)
51
-    {
52
-        if (!$this->validateValue($value)) {
53
-            $this->validationError(
54
-                $fieldName,
55
-                _t(
56
-                    __CLASS__ . '.InvalidValue',
57
-                    'Synonyms cannot contain words separated by spaces'
58
-                )
59
-            );
60
-        }
61
-    }
62
-
63
-    /**
64
-     * Check field values to see that they doesn't contain spaces between words.
65
-     *
66
-     * @param mixed $value
67
-     *
68
-     * @return bool
69
-     */
70
-    protected function validateValue($value)
71
-    {
72
-        // strip empty lines
73
-        $lines = array_filter(
74
-            explode("\n", $value)
75
-        );
76
-
77
-        // strip comments (lines beginning with "#")
78
-        $lines = array_filter($lines, function ($line) {
79
-            $line = trim($line);
80
-
81
-            return !empty($line) && $line[0] !== '#';
82
-        });
83
-
84
-        // validate each line
85
-        foreach ($lines as $line) {
86
-            if (!$this->validateLine($line)) {
87
-                return false;
88
-            }
89
-        }
90
-
91
-        return true;
92
-    }
93
-
94
-    /**
95
-     * Check each line to see that it doesn't contain spaces between words.
96
-     *
97
-     * @param string $line
98
-     *
99
-     * @return bool
100
-     */
101
-    protected function validateLine($line)
102
-    {
103
-        $line = trim($line);
104
-
105
-        $parts = explode(',', $line);
106
-        $parts = array_filter($parts);
107
-
108
-        foreach ($parts as $part) {
109
-            if (!$this->validatePart($part)) {
110
-                return false;
111
-            }
112
-        }
113
-
114
-        return true;
115
-    }
116
-
117
-    /**
118
-     * Check each part of the line doesn't contain spaces between words.
119
-     *
120
-     * @param string $part
121
-     *
122
-     * @return bool
123
-     */
124
-    protected function validatePart($part)
125
-    {
126
-        if (strpos($part, '=>') !== false) {
127
-            $subs = explode('=>', $part);
128
-            $subs = array_filter($subs);
129
-
130
-            foreach ($subs as $sub) {
131
-                if (!$this->validateNoSpaces($sub)) {
132
-                    return false;
133
-                }
134
-            }
135
-
136
-            return true;
137
-        }
138
-
139
-        return $this->validateNoSpaces($part);
140
-    }
141
-
142
-    /**
143
-     * @param string $value
144
-     *
145
-     * @return bool
146
-     */
147
-    protected function validateNoSpaces($value)
148
-    {
149
-        // allow spaces at the beginning and end of the value
150
-        $value = trim($value);
151
-
152
-        // does the value contain 1 or more whitespace characters?
153
-        if (preg_match('/\s+/', $value)) {
154
-            return false;
155
-        }
156
-
157
-        return true;
158
-    }
9
+	/**
10
+	 * @var array
11
+	 */
12
+	protected $fieldNames;
13
+
14
+	/**
15
+	 * @inheritdoc
16
+	 *
17
+	 * @param array $fieldNames
18
+	 */
19
+	public function __construct(array $fieldNames)
20
+	{
21
+		$this->fieldNames = $fieldNames;
22
+
23
+		parent::__construct();
24
+	}
25
+
26
+	/**
27
+	 * @inheritdoc
28
+	 *
29
+	 * @param array $data
30
+	 *
31
+	 * @return mixed
32
+	 */
33
+	public function php($data)
34
+	{
35
+		foreach ($this->fieldNames as $fieldName) {
36
+			if (empty($data[$fieldName])) {
37
+				return;
38
+			}
39
+
40
+			$this->validateField($fieldName, $data[$fieldName]);
41
+		}
42
+	}
43
+
44
+	/**
45
+	 * Validate field values, raising errors if the values are invalid.
46
+	 *
47
+	 * @param string $fieldName
48
+	 * @param mixed $value
49
+	 */
50
+	protected function validateField($fieldName, $value)
51
+	{
52
+		if (!$this->validateValue($value)) {
53
+			$this->validationError(
54
+				$fieldName,
55
+				_t(
56
+					__CLASS__ . '.InvalidValue',
57
+					'Synonyms cannot contain words separated by spaces'
58
+				)
59
+			);
60
+		}
61
+	}
62
+
63
+	/**
64
+	 * Check field values to see that they doesn't contain spaces between words.
65
+	 *
66
+	 * @param mixed $value
67
+	 *
68
+	 * @return bool
69
+	 */
70
+	protected function validateValue($value)
71
+	{
72
+		// strip empty lines
73
+		$lines = array_filter(
74
+			explode("\n", $value)
75
+		);
76
+
77
+		// strip comments (lines beginning with "#")
78
+		$lines = array_filter($lines, function ($line) {
79
+			$line = trim($line);
80
+
81
+			return !empty($line) && $line[0] !== '#';
82
+		});
83
+
84
+		// validate each line
85
+		foreach ($lines as $line) {
86
+			if (!$this->validateLine($line)) {
87
+				return false;
88
+			}
89
+		}
90
+
91
+		return true;
92
+	}
93
+
94
+	/**
95
+	 * Check each line to see that it doesn't contain spaces between words.
96
+	 *
97
+	 * @param string $line
98
+	 *
99
+	 * @return bool
100
+	 */
101
+	protected function validateLine($line)
102
+	{
103
+		$line = trim($line);
104
+
105
+		$parts = explode(',', $line);
106
+		$parts = array_filter($parts);
107
+
108
+		foreach ($parts as $part) {
109
+			if (!$this->validatePart($part)) {
110
+				return false;
111
+			}
112
+		}
113
+
114
+		return true;
115
+	}
116
+
117
+	/**
118
+	 * Check each part of the line doesn't contain spaces between words.
119
+	 *
120
+	 * @param string $part
121
+	 *
122
+	 * @return bool
123
+	 */
124
+	protected function validatePart($part)
125
+	{
126
+		if (strpos($part, '=>') !== false) {
127
+			$subs = explode('=>', $part);
128
+			$subs = array_filter($subs);
129
+
130
+			foreach ($subs as $sub) {
131
+				if (!$this->validateNoSpaces($sub)) {
132
+					return false;
133
+				}
134
+			}
135
+
136
+			return true;
137
+		}
138
+
139
+		return $this->validateNoSpaces($part);
140
+	}
141
+
142
+	/**
143
+	 * @param string $value
144
+	 *
145
+	 * @return bool
146
+	 */
147
+	protected function validateNoSpaces($value)
148
+	{
149
+		// allow spaces at the beginning and end of the value
150
+		$value = trim($value);
151
+
152
+		// does the value contain 1 or more whitespace characters?
153
+		if (preg_match('/\s+/', $value)) {
154
+			return false;
155
+		}
156
+
157
+		return true;
158
+	}
159 159
 }
Please login to merge, or discard this patch.
src/Extensions/CwpSiteTreeFileExtension.php 1 patch
Indentation   +49 added lines, -49 removed lines patch added patch discarded remove patch
@@ -11,53 +11,53 @@
 block discarded – undo
11 11
 class CwpSiteTreeFileExtension extends DataExtension
12 12
 {
13 13
 
14
-    public function updateCMSFields(FieldList $fields)
15
-    {
16
-        Requirements::css('cwp/cwp:css/fieldDescriptionToggle.css');
17
-        Requirements::javascript('cwp/cwp:javascript/fieldDescriptionToggle.js');
18
-
19
-        $fields->insertAfter(
20
-            'LastEdited',
21
-            ReadonlyField::create(
22
-                'BackLinkCount',
23
-                _t('SilverStripe\\CMS\\Model\\SiteTreeFileExtension.BACKLINKCOUNT', 'Used on:'),
24
-                $this->owner->BackLinkTracking()->Count() . ' '
25
-                    . _t('SilverStripe\\CMS\\Model\\SiteTreeFileExtension.PAGES', 'page(s)')
26
-            )
27
-            ->addExtraClass('cms-description-toggle')
28
-            ->setDescription($this->BackLinkHTMLList())
29
-        );
30
-    }
31
-
32
-    /**
33
-     * Generate an HTML list which provides links to where a file is used.
34
-     *
35
-     * @return string
36
-     */
37
-    public function BackLinkHTMLList()
38
-    {
39
-        $html = '<em>' . _t(
40
-            __CLASS__ . '.BACKLINK_LIST_DESCRIPTION',
41
-            'This list shows all pages where the file has been added through a WYSIWYG editor.'
42
-        ) . '</em>';
43
-        $html .= '<ul>';
44
-
45
-        foreach ($this->owner->BackLinkTracking() as $backLink) {
46
-            $listItem = '<li>';
47
-
48
-            // Add the page link
49
-            $listItem .= '<a href="' . $backLink->Link() . '" target="_blank">'
50
-                . Convert::raw2xml($backLink->MenuTitle) . '</a> &ndash; ';
51
-
52
-            // Add the CMS link
53
-            $listItem .= '<a href="' . $backLink->CMSEditLink() . '">'
54
-                . _t(__CLASS__ . '.EDIT', 'Edit') . '</a>';
55
-
56
-            $html .= $listItem . '</li>';
57
-        }
58
-
59
-        $html .= '</ul>';
60
-
61
-        return $html;
62
-    }
14
+	public function updateCMSFields(FieldList $fields)
15
+	{
16
+		Requirements::css('cwp/cwp:css/fieldDescriptionToggle.css');
17
+		Requirements::javascript('cwp/cwp:javascript/fieldDescriptionToggle.js');
18
+
19
+		$fields->insertAfter(
20
+			'LastEdited',
21
+			ReadonlyField::create(
22
+				'BackLinkCount',
23
+				_t('SilverStripe\\CMS\\Model\\SiteTreeFileExtension.BACKLINKCOUNT', 'Used on:'),
24
+				$this->owner->BackLinkTracking()->Count() . ' '
25
+					. _t('SilverStripe\\CMS\\Model\\SiteTreeFileExtension.PAGES', 'page(s)')
26
+			)
27
+			->addExtraClass('cms-description-toggle')
28
+			->setDescription($this->BackLinkHTMLList())
29
+		);
30
+	}
31
+
32
+	/**
33
+	 * Generate an HTML list which provides links to where a file is used.
34
+	 *
35
+	 * @return string
36
+	 */
37
+	public function BackLinkHTMLList()
38
+	{
39
+		$html = '<em>' . _t(
40
+			__CLASS__ . '.BACKLINK_LIST_DESCRIPTION',
41
+			'This list shows all pages where the file has been added through a WYSIWYG editor.'
42
+		) . '</em>';
43
+		$html .= '<ul>';
44
+
45
+		foreach ($this->owner->BackLinkTracking() as $backLink) {
46
+			$listItem = '<li>';
47
+
48
+			// Add the page link
49
+			$listItem .= '<a href="' . $backLink->Link() . '" target="_blank">'
50
+				. Convert::raw2xml($backLink->MenuTitle) . '</a> &ndash; ';
51
+
52
+			// Add the CMS link
53
+			$listItem .= '<a href="' . $backLink->CMSEditLink() . '">'
54
+				. _t(__CLASS__ . '.EDIT', 'Edit') . '</a>';
55
+
56
+			$html .= $listItem . '</li>';
57
+		}
58
+
59
+		$html .= '</ul>';
60
+
61
+		return $html;
62
+	}
63 63
 }
Please login to merge, or discard this patch.
src/Extensions/CwpSiteTreeExtension.php 1 patch
Indentation   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -9,39 +9,39 @@
 block discarded – undo
9 9
 
10 10
 class CwpSiteTreeExtension extends DataExtension
11 11
 {
12
-    private static $db = array(
13
-        'ShowPageUtilities' => 'Boolean(1)'
14
-    );
12
+	private static $db = array(
13
+		'ShowPageUtilities' => 'Boolean(1)'
14
+	);
15 15
 
16
-    private static $defaults = array(
17
-        'ShowPageUtilities' => true
18
-    );
16
+	private static $defaults = array(
17
+		'ShowPageUtilities' => true
18
+	);
19 19
 
20
-    /**
21
-     * Modify the settings for a SiteTree
22
-     *
23
-     * {@inheritDoc}
24
-     *
25
-     * @param FieldList $fields
26
-     */
27
-    public function updateSettingsFields(FieldList $fields)
28
-    {
29
-        $helpText = _t(
30
-            __CLASS__ . '.SHOW_PAGE_UTILITIES_HELP',
31
-            'You can disable page utilities (print, share, etc) for this page'
32
-        );
20
+	/**
21
+	 * Modify the settings for a SiteTree
22
+	 *
23
+	 * {@inheritDoc}
24
+	 *
25
+	 * @param FieldList $fields
26
+	 */
27
+	public function updateSettingsFields(FieldList $fields)
28
+	{
29
+		$helpText = _t(
30
+			__CLASS__ . '.SHOW_PAGE_UTILITIES_HELP',
31
+			'You can disable page utilities (print, share, etc) for this page'
32
+		);
33 33
 
34
-        $fields->addFieldsToTab(
35
-            'Root.Settings',
36
-            array(
37
-                LiteralField::create('PageUtilitiesHelp', $helpText),
38
-                CheckboxField::create('ShowPageUtilities', $this->owner->fieldLabel('ShowPageUtilities'))
39
-            )
40
-        );
41
-    }
34
+		$fields->addFieldsToTab(
35
+			'Root.Settings',
36
+			array(
37
+				LiteralField::create('PageUtilitiesHelp', $helpText),
38
+				CheckboxField::create('ShowPageUtilities', $this->owner->fieldLabel('ShowPageUtilities'))
39
+			)
40
+		);
41
+	}
42 42
 
43
-    public function updateFieldLabels(&$labels)
44
-    {
45
-        $labels['ShowPageUtilities'] = _t(__CLASS__ . '.SHOW_PAGE_UTILITIES', 'Show page utilities?');
46
-    }
43
+	public function updateFieldLabels(&$labels)
44
+	{
45
+		$labels['ShowPageUtilities'] = _t(__CLASS__ . '.SHOW_PAGE_UTILITIES', 'Show page utilities?');
46
+	}
47 47
 }
Please login to merge, or discard this patch.
src/Extensions/SynonymsSiteConfig.php 1 patch
Indentation   +42 added lines, -42 removed lines patch added patch discarded remove patch
@@ -16,52 +16,52 @@
 block discarded – undo
16 16
 class SynonymsSiteConfig extends DataExtension
17 17
 {
18 18
 
19
-    private static $db = array(
20
-        'SearchSynonyms' => 'Text', // fulltextsearch synonyms.txt content
21
-    );
19
+	private static $db = array(
20
+		'SearchSynonyms' => 'Text', // fulltextsearch synonyms.txt content
21
+	);
22 22
 
23
-    public function updateCMSFields(FieldList $fields)
24
-    {
25
-        // Don't show this field if you're not an admin
26
-        if (!Permission::check('ADMIN')) {
27
-            return;
28
-        }
23
+	public function updateCMSFields(FieldList $fields)
24
+	{
25
+		// Don't show this field if you're not an admin
26
+		if (!Permission::check('ADMIN')) {
27
+			return;
28
+		}
29 29
 
30
-        // Search synonyms
31
-        $fields->addFieldToTab(
32
-            'Root.FulltextSearch',
33
-            TextareaField::create('SearchSynonyms', _t(__CLASS__ . '.SearchSynonyms', 'Search Synonyms'))
34
-                ->setDescription(_t(
35
-                    __CLASS__ . '.SearchSynonyms_Description',
36
-                    'Enter as many comma separated synonyms as you wish, where '.
37
-                    'each line represents a group of synonyms.<br /> ' .
38
-                    'You will need to run <a rel="external" target="_blank" href="dev/tasks/Solr_Configure">'
39
-                    . 'Solr_Configure</a> if you make any changes'
40
-                ))
41
-        );
42
-    }
30
+		// Search synonyms
31
+		$fields->addFieldToTab(
32
+			'Root.FulltextSearch',
33
+			TextareaField::create('SearchSynonyms', _t(__CLASS__ . '.SearchSynonyms', 'Search Synonyms'))
34
+				->setDescription(_t(
35
+					__CLASS__ . '.SearchSynonyms_Description',
36
+					'Enter as many comma separated synonyms as you wish, where '.
37
+					'each line represents a group of synonyms.<br /> ' .
38
+					'You will need to run <a rel="external" target="_blank" href="dev/tasks/Solr_Configure">'
39
+					. 'Solr_Configure</a> if you make any changes'
40
+				))
41
+		);
42
+	}
43 43
 
44
-    /**
45
-     * @inheritdoc
46
-     *
47
-     * @param ValidationResult $validationResult
48
-     */
49
-    public function validate(ValidationResult $validationResult)
50
-    {
51
-        $validator = new SynonymValidator(array(
52
-            'SearchSynonyms',
53
-        ));
44
+	/**
45
+	 * @inheritdoc
46
+	 *
47
+	 * @param ValidationResult $validationResult
48
+	 */
49
+	public function validate(ValidationResult $validationResult)
50
+	{
51
+		$validator = new SynonymValidator(array(
52
+			'SearchSynonyms',
53
+		));
54 54
 
55
-        $validator->php(array(
56
-            'SearchSynonyms' => $this->owner->SearchSynonyms
57
-        ));
55
+		$validator->php(array(
56
+			'SearchSynonyms' => $this->owner->SearchSynonyms
57
+		));
58 58
 
59
-        $errors = $validator->getErrors();
59
+		$errors = $validator->getErrors();
60 60
 
61
-        if (is_array($errors) || $errors instanceof Traversable) {
62
-            foreach ($errors as $error) {
63
-                $validationResult->addError($error['message']);
64
-            }
65
-        }
66
-    }
61
+		if (is_array($errors) || $errors instanceof Traversable) {
62
+			foreach ($errors as $error) {
63
+				$validationResult->addError($error['message']);
64
+			}
65
+		}
66
+	}
67 67
 }
Please login to merge, or discard this patch.
src/Search/CwpSearchPageController.php 1 patch
Indentation   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -11,25 +11,25 @@
 block discarded – undo
11 11
  */
12 12
 class CwpSearchPageController extends PageController
13 13
 {
14
-    /**
15
-     * Create the dummy search record for this page
16
-     *
17
-     * @return CwpSearchPage
18
-     */
19
-    protected function generateSearchRecord()
20
-    {
21
-        $searchPage = CwpSearchPage::create();
22
-        $searchPage->URLSegment = 'search';
23
-        $searchPage->Title = _t('SilverStripe\\CMS\\Search\\SearchForm.SearchResults', 'Search Results');
24
-        $searchPage->ID = -1;
25
-        return $searchPage;
26
-    }
14
+	/**
15
+	 * Create the dummy search record for this page
16
+	 *
17
+	 * @return CwpSearchPage
18
+	 */
19
+	protected function generateSearchRecord()
20
+	{
21
+		$searchPage = CwpSearchPage::create();
22
+		$searchPage->URLSegment = 'search';
23
+		$searchPage->Title = _t('SilverStripe\\CMS\\Search\\SearchForm.SearchResults', 'Search Results');
24
+		$searchPage->ID = -1;
25
+		return $searchPage;
26
+	}
27 27
 
28
-    public function __construct($dataRecord = null)
29
-    {
30
-        if (!$dataRecord) {
31
-            $dataRecord = $this->generateSearchRecord();
32
-        }
33
-        parent::__construct($dataRecord);
34
-    }
28
+	public function __construct($dataRecord = null)
29
+	{
30
+		if (!$dataRecord) {
31
+			$dataRecord = $this->generateSearchRecord();
32
+		}
33
+		parent::__construct($dataRecord);
34
+	}
35 35
 }
Please login to merge, or discard this patch.
src/Tasks/PopulateThemeSampleDataTask.php 1 patch
Indentation   +129 added lines, -129 removed lines patch added patch discarded remove patch
@@ -17,133 +17,133 @@
 block discarded – undo
17 17
  */
18 18
 class PopulateThemeSampleDataTask extends BuildTask
19 19
 {
20
-    protected $title = 'Populate sample data for theme demo';
21
-
22
-    protected $description = 'Populates some sample data for showcasing the functionality of the '
23
-        . 'starter and Wātea themes';
24
-
25
-    /**
26
-     * A series of method calls to create sample data
27
-     *
28
-     * @param HTTPRequest $request
29
-     */
30
-    public function run($request)
31
-    {
32
-        $this->handleContactForm();
33
-    }
34
-
35
-    /**
36
-     * Decide whether to create a contact user defined form, and call it to be be created if so
37
-     *
38
-     * @return $this
39
-     */
40
-    protected function handleContactForm()
41
-    {
42
-        if (!$this->getContactFormExists()) {
43
-            $this->createContactForm();
44
-        }
45
-        return $this;
46
-    }
47
-
48
-    /**
49
-     * Determine whether a "contact us" userform exists yet
50
-     *
51
-     * @return bool
52
-     */
53
-    protected function getContactFormExists()
54
-    {
55
-        $exists = false;
56
-        foreach (UserDefinedForm::get()->column('ID') as $formId) {
57
-            $count = Versioned::get_all_versions(UserDefinedForm::class, $formId)
58
-                ->filter('URLSegment', 'contact')
59
-                ->count();
60
-
61
-            if ($count >= 1) {
62
-                $exists = true;
63
-                break;
64
-            }
65
-        }
66
-        return $exists;
67
-    }
68
-
69
-    /**
70
-     * Create a "contact us" userform. Please note that this form does not have any recipients by default, so
71
-     * no emails will be sent. To add recipients - edit the page in the CMS and add a recipient via the "Recipients"
72
-     * tab.
73
-     *
74
-     * @return $this
75
-     */
76
-    protected function createContactForm()
77
-    {
78
-        $form = UserDefinedForm::create(array(
79
-            'Title' => 'Contact',
80
-            'URLSegment' => 'contact',
81
-            'Content' => '<p>$UserDefinedForm</p>',
82
-            'SubmitButtonText' => 'Submit',
83
-            'ClearButtonText' => 'Clear',
84
-            'OnCompleteMessage' => "<p>Thanks, we've received your submission and will be in touch shortly.</p>",
85
-            'EnableLiveValidation' => true
86
-        ));
87
-
88
-        $form->write();
89
-
90
-        // Add form fields
91
-        $fields = array(
92
-            EditableFormStep::create([
93
-                'Title' => _t(
94
-                    'SilverStripe\\UserForms\\Model\\EditableFormField\\EditableFormStep.TITLE_FIRST',
95
-                    'First Page'
96
-                )
97
-            ]),
98
-            EditableTextField::create([
99
-                'Title' => 'Name',
100
-                'Required' => true,
101
-                'RightTitle' => 'Please enter your first and last name'
102
-            ]),
103
-            EditableEmailField::create([
104
-                'Title' => Email::class,
105
-                'Required' => true,
106
-                'Placeholder' => '[email protected]'
107
-            ]),
108
-            EditableTextField::create([
109
-                'Title' => 'Subject'
110
-            ]),
111
-            EditableTextField::create([
112
-                'Title' => 'Message',
113
-                'Required' => true,
114
-                'Rows' => 5
115
-            ])
116
-        );
117
-
118
-        foreach ($fields as $field) {
119
-            $field->write();
120
-            $form->Fields()->add($field);
121
-            $field->copyVersionToStage(Versioned::DRAFT, Versioned::LIVE);
122
-        }
123
-
124
-        $form->copyVersionToStage(Versioned::DRAFT, Versioned::LIVE);
125
-        $form->flushCache();
126
-
127
-        $this->output(' + Created "contact" UserDefinedForm page');
128
-
129
-        return $this;
130
-    }
131
-
132
-    /**
133
-     * Output a message either to the console or browser
134
-     *
135
-     * @param  string $message
136
-     * @return $this
137
-     */
138
-    protected function output($message)
139
-    {
140
-        if (Director::is_cli()) {
141
-            $message .= PHP_EOL;
142
-        } else {
143
-            $message = sprintf('<p>%s</p>', $message);
144
-        }
145
-        echo $message;
146
-
147
-        return $this;
148
-    }
20
+	protected $title = 'Populate sample data for theme demo';
21
+
22
+	protected $description = 'Populates some sample data for showcasing the functionality of the '
23
+		. 'starter and Wātea themes';
24
+
25
+	/**
26
+	 * A series of method calls to create sample data
27
+	 *
28
+	 * @param HTTPRequest $request
29
+	 */
30
+	public function run($request)
31
+	{
32
+		$this->handleContactForm();
33
+	}
34
+
35
+	/**
36
+	 * Decide whether to create a contact user defined form, and call it to be be created if so
37
+	 *
38
+	 * @return $this
39
+	 */
40
+	protected function handleContactForm()
41
+	{
42
+		if (!$this->getContactFormExists()) {
43
+			$this->createContactForm();
44
+		}
45
+		return $this;
46
+	}
47
+
48
+	/**
49
+	 * Determine whether a "contact us" userform exists yet
50
+	 *
51
+	 * @return bool
52
+	 */
53
+	protected function getContactFormExists()
54
+	{
55
+		$exists = false;
56
+		foreach (UserDefinedForm::get()->column('ID') as $formId) {
57
+			$count = Versioned::get_all_versions(UserDefinedForm::class, $formId)
58
+				->filter('URLSegment', 'contact')
59
+				->count();
60
+
61
+			if ($count >= 1) {
62
+				$exists = true;
63
+				break;
64
+			}
65
+		}
66
+		return $exists;
67
+	}
68
+
69
+	/**
70
+	 * Create a "contact us" userform. Please note that this form does not have any recipients by default, so
71
+	 * no emails will be sent. To add recipients - edit the page in the CMS and add a recipient via the "Recipients"
72
+	 * tab.
73
+	 *
74
+	 * @return $this
75
+	 */
76
+	protected function createContactForm()
77
+	{
78
+		$form = UserDefinedForm::create(array(
79
+			'Title' => 'Contact',
80
+			'URLSegment' => 'contact',
81
+			'Content' => '<p>$UserDefinedForm</p>',
82
+			'SubmitButtonText' => 'Submit',
83
+			'ClearButtonText' => 'Clear',
84
+			'OnCompleteMessage' => "<p>Thanks, we've received your submission and will be in touch shortly.</p>",
85
+			'EnableLiveValidation' => true
86
+		));
87
+
88
+		$form->write();
89
+
90
+		// Add form fields
91
+		$fields = array(
92
+			EditableFormStep::create([
93
+				'Title' => _t(
94
+					'SilverStripe\\UserForms\\Model\\EditableFormField\\EditableFormStep.TITLE_FIRST',
95
+					'First Page'
96
+				)
97
+			]),
98
+			EditableTextField::create([
99
+				'Title' => 'Name',
100
+				'Required' => true,
101
+				'RightTitle' => 'Please enter your first and last name'
102
+			]),
103
+			EditableEmailField::create([
104
+				'Title' => Email::class,
105
+				'Required' => true,
106
+				'Placeholder' => '[email protected]'
107
+			]),
108
+			EditableTextField::create([
109
+				'Title' => 'Subject'
110
+			]),
111
+			EditableTextField::create([
112
+				'Title' => 'Message',
113
+				'Required' => true,
114
+				'Rows' => 5
115
+			])
116
+		);
117
+
118
+		foreach ($fields as $field) {
119
+			$field->write();
120
+			$form->Fields()->add($field);
121
+			$field->copyVersionToStage(Versioned::DRAFT, Versioned::LIVE);
122
+		}
123
+
124
+		$form->copyVersionToStage(Versioned::DRAFT, Versioned::LIVE);
125
+		$form->flushCache();
126
+
127
+		$this->output(' + Created "contact" UserDefinedForm page');
128
+
129
+		return $this;
130
+	}
131
+
132
+	/**
133
+	 * Output a message either to the console or browser
134
+	 *
135
+	 * @param  string $message
136
+	 * @return $this
137
+	 */
138
+	protected function output($message)
139
+	{
140
+		if (Director::is_cli()) {
141
+			$message .= PHP_EOL;
142
+		} else {
143
+			$message = sprintf('<p>%s</p>', $message);
144
+		}
145
+		echo $message;
146
+
147
+		return $this;
148
+	}
149 149
 }
Please login to merge, or discard this patch.
src/PageTypes/DatedUpdatePage.php 1 patch
Indentation   +55 added lines, -55 removed lines patch added patch discarded remove patch
@@ -10,70 +10,70 @@
 block discarded – undo
10 10
 
11 11
 class DatedUpdatePage extends Page
12 12
 {
13
-    /**
14
-     * Meant as an abstract base class.
15
-     *
16
-     * {@inheritDoc}
17
-     */
18
-    private static $hide_ancestor = DatedUpdatePage::class;
13
+	/**
14
+	 * Meant as an abstract base class.
15
+	 *
16
+	 * {@inheritDoc}
17
+	 */
18
+	private static $hide_ancestor = DatedUpdatePage::class;
19 19
 
20
-    private static $singular_name = 'Dated Update Page';
20
+	private static $singular_name = 'Dated Update Page';
21 21
 
22
-    private static $plural_name = 'Dated Update Pages';
22
+	private static $plural_name = 'Dated Update Pages';
23 23
 
24
-    private static $table_name = 'DatedUpdatePage';
24
+	private static $table_name = 'DatedUpdatePage';
25 25
 
26
-    private static $defaults = [
27
-        'ShowInMenus' => false,
28
-    ];
26
+	private static $defaults = [
27
+		'ShowInMenus' => false,
28
+	];
29 29
 
30
-    private static $db = [
31
-        'Abstract' => 'Text',
32
-        'Date' => 'Datetime',
33
-    ];
30
+	private static $db = [
31
+		'Abstract' => 'Text',
32
+		'Date' => 'Datetime',
33
+	];
34 34
 
35
-    /**
36
-     * Add the default for the Date being the current day.
37
-     */
38
-    public function populateDefaults()
39
-    {
40
-        parent::populateDefaults();
35
+	/**
36
+	 * Add the default for the Date being the current day.
37
+	 */
38
+	public function populateDefaults()
39
+	{
40
+		parent::populateDefaults();
41 41
 
42
-        if (!isset($this->Date) || $this->Date === null) {
43
-            $this->Date = DBDatetime::now()->Format('y-MM-dd 09:00:00');
44
-        }
45
-    }
42
+		if (!isset($this->Date) || $this->Date === null) {
43
+			$this->Date = DBDatetime::now()->Format('y-MM-dd 09:00:00');
44
+		}
45
+	}
46 46
 
47
-    public function fieldLabels($includerelations = true)
48
-    {
49
-        $labels = parent::fieldLabels($includerelations);
50
-        $labels['Date'] = _t(__CLASS__ . '.DateLabel', 'Date');
51
-        $labels['Abstract'] = _t(__CLASS__ . '.AbstractTextFieldLabel', 'Abstract');
47
+	public function fieldLabels($includerelations = true)
48
+	{
49
+		$labels = parent::fieldLabels($includerelations);
50
+		$labels['Date'] = _t(__CLASS__ . '.DateLabel', 'Date');
51
+		$labels['Abstract'] = _t(__CLASS__ . '.AbstractTextFieldLabel', 'Abstract');
52 52
 
53
-        return $labels;
54
-    }
53
+		return $labels;
54
+	}
55 55
 
56
-    public function getCMSFields()
57
-    {
58
-        $this->beforeUpdateCMSFields(function (FieldList $fields) {
59
-            $fields->addFieldToTab(
60
-                'Root.Main',
61
-                $dateTimeField = DatetimeField::create('Date', $this->fieldLabel('Date')),
62
-                'Content'
63
-            );
56
+	public function getCMSFields()
57
+	{
58
+		$this->beforeUpdateCMSFields(function (FieldList $fields) {
59
+			$fields->addFieldToTab(
60
+				'Root.Main',
61
+				$dateTimeField = DatetimeField::create('Date', $this->fieldLabel('Date')),
62
+				'Content'
63
+			);
64 64
 
65
-            $fields->addfieldToTab(
66
-                'Root.Main',
67
-                $abstractField = TextareaField::create('Abstract', $this->fieldLabel('Abstract')),
68
-                'Content'
69
-            );
70
-            $abstractField->setAttribute('maxlength', '160');
71
-            $abstractField->setRightTitle(_t(
72
-                __CLASS__ . '.AbstractDesc',
73
-                'The abstract is used as a summary on the listing pages. It is limited to 160 characters.'
74
-            ));
75
-            $abstractField->setRows(6);
76
-        });
77
-        return parent::getCMSFields();
78
-    }
65
+			$fields->addfieldToTab(
66
+				'Root.Main',
67
+				$abstractField = TextareaField::create('Abstract', $this->fieldLabel('Abstract')),
68
+				'Content'
69
+			);
70
+			$abstractField->setAttribute('maxlength', '160');
71
+			$abstractField->setRightTitle(_t(
72
+				__CLASS__ . '.AbstractDesc',
73
+				'The abstract is used as a summary on the listing pages. It is limited to 160 characters.'
74
+			));
75
+			$abstractField->setRows(6);
76
+		});
77
+		return parent::getCMSFields();
78
+	}
79 79
 }
Please login to merge, or discard this patch.
src/PageTypes/EventHolder.php 1 patch
Indentation   +53 added lines, -53 removed lines patch added patch discarded remove patch
@@ -7,57 +7,57 @@
 block discarded – undo
7 7
 
8 8
 class EventHolder extends DatedUpdateHolder
9 9
 {
10
-    private static $description = 'Container page for Event Pages, provides event filtering and pagination';
11
-
12
-    private static $allowed_children = [
13
-        EventPage::class,
14
-    ];
15
-
16
-    private static $default_child = EventPage::class;
17
-
18
-    private static $update_name = 'Events';
19
-
20
-    private static $update_class = EventPage::class;
21
-
22
-    private static $icon = 'cwp/cwp:images/icons/sitetree_images/event_holder.png';
23
-
24
-    private static $singular_name = 'Event Holder';
25
-
26
-    private static $plural_name = 'Event Holders';
27
-
28
-    private static $table_name = 'EventHolder';
29
-
30
-    /**
31
-     * Find all site's news items, based on some filters.
32
-     * Omitting parameters will prevent relevant filters from being applied. The filters are ANDed together.
33
-     *
34
-     * @param string $className The name of the class to fetch.
35
-     * @param int $parentID The ID of the holder to extract the news items from.
36
-     * @param int $tagID The ID of the tag to filter the news items by.
37
-     * @param string $dateFrom The beginning of a date filter range.
38
-     * @param string $dateTo The end of the date filter range. If empty, only one day will be searched for.
39
-     * @param int $year Numeric value of the year to show.
40
-     * @param int $monthNumber Numeric value of the month to show.
41
-     *
42
-     * @returns DataList|PaginatedList
43
-     */
44
-    public static function AllUpdates(
45
-        $className = 'Events',
46
-        $parentID = null,
47
-        $tagID = null,
48
-        $dateFrom = null,
49
-        $dateTo = null,
50
-        $year = null,
51
-        $monthNumber = null
52
-    ) {
53
-        return parent::AllUpdates(
54
-            $className,
55
-            $parentID,
56
-            $tagID,
57
-            $dateFrom,
58
-            $dateTo,
59
-            $year,
60
-            $monthNumber
61
-        )->Sort('Date', 'ASC');
62
-    }
10
+	private static $description = 'Container page for Event Pages, provides event filtering and pagination';
11
+
12
+	private static $allowed_children = [
13
+		EventPage::class,
14
+	];
15
+
16
+	private static $default_child = EventPage::class;
17
+
18
+	private static $update_name = 'Events';
19
+
20
+	private static $update_class = EventPage::class;
21
+
22
+	private static $icon = 'cwp/cwp:images/icons/sitetree_images/event_holder.png';
23
+
24
+	private static $singular_name = 'Event Holder';
25
+
26
+	private static $plural_name = 'Event Holders';
27
+
28
+	private static $table_name = 'EventHolder';
29
+
30
+	/**
31
+	 * Find all site's news items, based on some filters.
32
+	 * Omitting parameters will prevent relevant filters from being applied. The filters are ANDed together.
33
+	 *
34
+	 * @param string $className The name of the class to fetch.
35
+	 * @param int $parentID The ID of the holder to extract the news items from.
36
+	 * @param int $tagID The ID of the tag to filter the news items by.
37
+	 * @param string $dateFrom The beginning of a date filter range.
38
+	 * @param string $dateTo The end of the date filter range. If empty, only one day will be searched for.
39
+	 * @param int $year Numeric value of the year to show.
40
+	 * @param int $monthNumber Numeric value of the month to show.
41
+	 *
42
+	 * @returns DataList|PaginatedList
43
+	 */
44
+	public static function AllUpdates(
45
+		$className = 'Events',
46
+		$parentID = null,
47
+		$tagID = null,
48
+		$dateFrom = null,
49
+		$dateTo = null,
50
+		$year = null,
51
+		$monthNumber = null
52
+	) {
53
+		return parent::AllUpdates(
54
+			$className,
55
+			$parentID,
56
+			$tagID,
57
+			$dateFrom,
58
+			$dateTo,
59
+			$year,
60
+			$monthNumber
61
+		)->Sort('Date', 'ASC');
62
+	}
63 63
 }
Please login to merge, or discard this patch.