mirror of
https://github.com/silverstripe/silverstripe-blog
synced 2024-10-22 11:05:58 +02:00
API Replace Extension subclasses
This commit is contained in:
parent
63af1fb3c9
commit
6799b181a9
@ -47,8 +47,8 @@ SilverStripe\Blog\Model\BlogPost:
|
|||||||
|
|
||||||
## Extension points in Blog and BlogPost users and how to use
|
## Extension points in Blog and BlogPost users and how to use
|
||||||
Both Blog and BlogPost have methods which return the list of candidate users or authors. If the previously
|
Both Blog and BlogPost have methods which return the list of candidate users or authors. If the previously
|
||||||
mentioned methods of reducing this list are not suitable or you wish to roll your own, you can utilise a
|
mentioned methods of reducing this list are not suitable or you wish to roll your own, you can utilise an
|
||||||
DataExtension to get the control you require.
|
Extension to get the control you require.
|
||||||
|
|
||||||
For example in BlogPost:
|
For example in BlogPost:
|
||||||
|
|
||||||
@ -68,9 +68,9 @@ protected function getCandidateAuthors()
|
|||||||
```
|
```
|
||||||
|
|
||||||
Note the line `$this->extend('updateCandidateAuthors', $list);` which allows you to call a
|
Note the line `$this->extend('updateCandidateAuthors', $list);` which allows you to call a
|
||||||
`updateCandidateAuthors` method in a DataExtension to the Blog Post class if you have not set a
|
`updateCandidateAuthors` method in a Extension to the Blog Post class if you have not set a
|
||||||
`restrict_authors_to_group` config, further filters the passed
|
`restrict_authors_to_group` config, further filters the passed
|
||||||
in Member list before it gets sent back to the form field.
|
in Member list before it gets sent back to the form field.
|
||||||
|
|
||||||
See the documentation on [DataExtension](https://docs.silverstripe.org/en/developer_guides/extending/extensions/) for further implementation notes.
|
See the documentation on [Extension](https://docs.silverstripe.org/en/developer_guides/extending/extensions/) for further implementation notes.
|
||||||
|
|
||||||
|
@ -3,14 +3,14 @@
|
|||||||
namespace SilverStripe\Blog\Model;
|
namespace SilverStripe\Blog\Model;
|
||||||
|
|
||||||
use SilverStripe\Comments\Model\Comment;
|
use SilverStripe\Comments\Model\Comment;
|
||||||
use SilverStripe\ORM\DataExtension;
|
use SilverStripe\Core\Extension;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds Blog specific behaviour to Comment.
|
* Adds Blog specific behaviour to Comment.
|
||||||
*
|
*
|
||||||
* @extends DataExtension<Comment>
|
* @extends Extension<Comment>
|
||||||
*/
|
*/
|
||||||
class BlogCommentExtension extends DataExtension
|
class BlogCommentExtension extends Extension
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Extra CSS classes for styling different comment types.
|
* Extra CSS classes for styling different comment types.
|
||||||
|
@ -9,11 +9,11 @@ use SilverStripe\Forms\GridField\GridField;
|
|||||||
use SilverStripe\Forms\GridField\GridFieldAddNewButton;
|
use SilverStripe\Forms\GridField\GridFieldAddNewButton;
|
||||||
use SilverStripe\Forms\Tab;
|
use SilverStripe\Forms\Tab;
|
||||||
use SilverStripe\Forms\TextareaField;
|
use SilverStripe\Forms\TextareaField;
|
||||||
use SilverStripe\ORM\DataExtension;
|
|
||||||
use SilverStripe\ORM\ManyManyList;
|
use SilverStripe\ORM\ManyManyList;
|
||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Member;
|
||||||
use SilverStripe\View\Parsers\URLSegmentFilter;
|
use SilverStripe\View\Parsers\URLSegmentFilter;
|
||||||
use SilverStripe\View\Requirements;
|
use SilverStripe\View\Requirements;
|
||||||
|
use SilverStripe\Core\Extension;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class is responsible for add Blog specific behaviour to Members.
|
* This class is responsible for add Blog specific behaviour to Members.
|
||||||
@ -21,9 +21,9 @@ use SilverStripe\View\Requirements;
|
|||||||
* @method ManyManyList<BlogPost> BlogPosts()
|
* @method ManyManyList<BlogPost> BlogPosts()
|
||||||
* @method Image BlogProfileImage()
|
* @method Image BlogProfileImage()
|
||||||
*
|
*
|
||||||
* @extends DataExtension<Member>
|
* @extends Extension<Member>
|
||||||
*/
|
*/
|
||||||
class BlogMemberExtension extends DataExtension
|
class BlogMemberExtension extends Extension
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var array
|
* @var array
|
||||||
|
@ -90,7 +90,7 @@ trait BlogObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inherits from the parent blog or can be overwritten using a DataExtension.
|
* Inherits from the parent blog or can be overwritten using an Extension.
|
||||||
*
|
*
|
||||||
* @param null|Member $member
|
* @param null|Member $member
|
||||||
*
|
*
|
||||||
@ -124,7 +124,7 @@ trait BlogObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inherits from the parent blog or can be overwritten using a DataExtension.
|
* Inherits from the parent blog or can be overwritten using an Extension.
|
||||||
*
|
*
|
||||||
* @param null|Member $member
|
* @param null|Member $member
|
||||||
*
|
*
|
||||||
@ -142,7 +142,7 @@ trait BlogObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inherits from the parent blog or can be overwritten using a DataExtension.
|
* Inherits from the parent blog or can be overwritten using an Extension.
|
||||||
*
|
*
|
||||||
* @param null|Member $member
|
* @param null|Member $member
|
||||||
*
|
*
|
||||||
|
@ -5,21 +5,21 @@ namespace SilverStripe\Blog\Model;
|
|||||||
use SilverStripe\Admin\LeftAndMain;
|
use SilverStripe\Admin\LeftAndMain;
|
||||||
use SilverStripe\Control\Controller;
|
use SilverStripe\Control\Controller;
|
||||||
use SilverStripe\Core\Convert;
|
use SilverStripe\Core\Convert;
|
||||||
use SilverStripe\ORM\DataExtension;
|
|
||||||
use SilverStripe\ORM\DataObject;
|
use SilverStripe\ORM\DataObject;
|
||||||
use SilverStripe\ORM\DataQuery;
|
use SilverStripe\ORM\DataQuery;
|
||||||
use SilverStripe\ORM\FieldType\DBDatetime;
|
use SilverStripe\ORM\FieldType\DBDatetime;
|
||||||
use SilverStripe\ORM\Queries\SQLSelect;
|
use SilverStripe\ORM\Queries\SQLSelect;
|
||||||
use SilverStripe\Security\Permission;
|
use SilverStripe\Security\Permission;
|
||||||
use SilverStripe\Versioned\Versioned;
|
use SilverStripe\Versioned\Versioned;
|
||||||
|
use SilverStripe\Core\Extension;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is responsible for filtering only published posts to users who do not have permission to
|
* This is responsible for filtering only published posts to users who do not have permission to
|
||||||
* view non-published posts.
|
* view non-published posts.
|
||||||
*
|
*
|
||||||
* @extends DataExtension<BlogPost>
|
* @extends Extension<BlogPost>
|
||||||
*/
|
*/
|
||||||
class BlogPostFilter extends DataExtension
|
class BlogPostFilter extends Extension
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Augment queries so that we don't fetch unpublished articles.
|
* Augment queries so that we don't fetch unpublished articles.
|
||||||
|
@ -4,18 +4,18 @@ namespace SilverStripe\Blog\Model;
|
|||||||
|
|
||||||
use SilverStripe\Comments\Model\Comment;
|
use SilverStripe\Comments\Model\Comment;
|
||||||
use SilverStripe\Core\Config\Config;
|
use SilverStripe\Core\Config\Config;
|
||||||
use SilverStripe\ORM\DataExtension;
|
|
||||||
use SilverStripe\ORM\SS_List;
|
use SilverStripe\ORM\SS_List;
|
||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Member;
|
||||||
|
use SilverStripe\Core\Extension;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Customise blog post to support comment notifications.
|
* Customise blog post to support comment notifications.
|
||||||
*
|
*
|
||||||
* Extends {@see BlogPost} with extensions to {@see CommentNotifiable}.
|
* Extends {@see BlogPost} with extensions to {@see CommentNotifiable}.
|
||||||
*
|
*
|
||||||
* @extends DataExtension<BlogPost>
|
* @extends Extension<BlogPost>
|
||||||
*/
|
*/
|
||||||
class BlogPostNotifications extends DataExtension
|
class BlogPostNotifications extends Extension
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Configure whether to send notifications even for spam comments
|
* Configure whether to send notifications even for spam comments
|
||||||
|
Loading…
Reference in New Issue
Block a user