2018-02-26 12:40:49 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace SilverStripe\Comments\Admin\CommentsGridFieldBulkAction;
|
|
|
|
|
|
|
|
use Colymba\BulkManager\BulkAction\Handler;
|
2019-03-22 03:00:19 +01:00
|
|
|
use Colymba\BulkTools\HTTPBulkToolsResponse;
|
2018-02-26 12:40:49 +01:00
|
|
|
use SilverStripe\Comments\Model\Comment;
|
|
|
|
use SilverStripe\Core\Convert;
|
|
|
|
use SilverStripe\Control\HTTPRequest;
|
|
|
|
use SilverStripe\Control\HTTPResponse;
|
|
|
|
|
|
|
|
abstract class CommentHandler extends Handler
|
|
|
|
{
|
|
|
|
protected $xhr = true;
|
|
|
|
|
|
|
|
protected $destructive = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param HTTPRequest $request
|
|
|
|
* @return HTTPResponse
|
|
|
|
*/
|
|
|
|
public function index(HTTPRequest $request)
|
|
|
|
{
|
|
|
|
$ids = [];
|
|
|
|
|
2019-03-22 03:00:19 +01:00
|
|
|
$response = new HTTPBulkToolsResponse(
|
|
|
|
true,
|
|
|
|
$this->gridField,
|
|
|
|
200
|
|
|
|
);
|
|
|
|
|
2018-02-26 12:40:49 +01:00
|
|
|
foreach ($this->getRecords() as $comment) {
|
|
|
|
array_push($ids, $comment->ID);
|
|
|
|
$this->updateComment($comment);
|
2019-03-22 03:00:19 +01:00
|
|
|
$response->addSuccessRecord($comment);
|
2018-02-26 12:40:49 +01:00
|
|
|
}
|
|
|
|
|
2019-03-22 03:00:19 +01:00
|
|
|
$response->setMessage('Changes applied');
|
2018-02-26 12:40:49 +01:00
|
|
|
|
|
|
|
return $response;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param Comment $comment
|
|
|
|
*
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
abstract public function updateComment($comment);
|
|
|
|
}
|