for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* @author Donatas Navidonskis <[email protected]>
* @since 2017
* @class ImageSliderItem
*
* @property int PictureID
* @method Image Picture
*/
class ImageSliderItem extends BaseSliderItem {
You can fix this by adding a namespace to your class:
namespace YourVendor; class YourClass { }
When choosing a vendor namespace, try to pick something that is not too generic to avoid conflicts with other libraries.
* @var array
* @config
private static $has_one = [
$has_one
This check marks private properties in classes that are never used. Those properties can be removed.
'Picture' => 'Image',
];
* @return string
public function singular_name() {
return _t('ImageSliderItem.SINGULARNAME', 'Image slider');
}
public function plural_name() {
return _t('ImageSliderItem.PLURALNAME', 'Image sliders');
* @return \FieldList
public function getCMSFields() {
$fields = parent::getCMSFields();
$fields->removeByName(['Picture']);
$fields->findOrMakeTab('Root.Media', $this->fieldLabel('Media'));
$fields->addFieldToTab('Root.Media', $uploadField = UploadField::create('Picture', $this->fieldLabel('Picture')));
$uploadField
->setAllowedMaxFileNumber(1)
->setAllowedFileCategories('image')
->setFolderName(
sprintf('%s/Sliders', BaseBlock::config()->upload_directory)
);
$this->extend('updateCMSFields', $fields);
return $fields;
You can fix this by adding a namespace to your class:
When choosing a vendor namespace, try to pick something that is not too generic to avoid conflicts with other libraries.