forked from wallabag/wallabag
Merge remote-tracking branch 'origin/master' into 2.4
This commit is contained in:
@ -568,18 +568,31 @@ class EntryRestController extends WallabagRestController
|
||||
* @ApiDoc(
|
||||
* requirements={
|
||||
* {"name"="entry", "dataType"="integer", "requirement"="\w+", "description"="The entry ID"}
|
||||
* },
|
||||
* parameters={
|
||||
* {"name"="expect", "dataType"="string", "required"=false, "format"="id or entry", "description"="Only returns the id instead of the deleted entry's full entity if 'id' is specified. Default to entry"},
|
||||
* }
|
||||
* )
|
||||
*
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function deleteEntriesAction(Entry $entry)
|
||||
public function deleteEntriesAction(Entry $entry, Request $request)
|
||||
{
|
||||
$expect = $request->query->get('expect', 'entry');
|
||||
if (!\in_array($expect, ['id', 'entry'], true)) {
|
||||
throw new BadRequestHttpException(sprintf("expect: 'id' or 'entry' expected, %s given", $expect));
|
||||
}
|
||||
$this->validateAuthentication();
|
||||
$this->validateUserAccess($entry->getUser()->getId());
|
||||
|
||||
// We copy $entry to keep id in returned object
|
||||
$e = $entry;
|
||||
$response = $this->sendResponse([
|
||||
'id' => $entry->getId(),
|
||||
]);
|
||||
// We clone $entry to keep id in returned object
|
||||
if ('entry' === $expect) {
|
||||
$e = clone $entry;
|
||||
$response = $this->sendResponse($e);
|
||||
}
|
||||
|
||||
$em = $this->getDoctrine()->getManager();
|
||||
$em->remove($entry);
|
||||
@ -588,7 +601,7 @@ class EntryRestController extends WallabagRestController
|
||||
// entry deleted, dispatch event about it!
|
||||
$this->get('event_dispatcher')->dispatch(EntryDeletedEvent::NAME, new EntryDeletedEvent($entry));
|
||||
|
||||
return $this->sendResponse($e);
|
||||
return $response;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -256,18 +256,17 @@ class ContentProxy
|
||||
$entry->setTitle($content['open_graph']['og_title']);
|
||||
}
|
||||
|
||||
$html = $content['html'];
|
||||
if (false === $html) {
|
||||
$html = $this->fetchingErrorMessage;
|
||||
if (empty($content['html'])) {
|
||||
$content['html'] = $this->fetchingErrorMessage;
|
||||
|
||||
if (!empty($content['open_graph']['og_description'])) {
|
||||
$html .= '<p><i>But we found a short description: </i></p>';
|
||||
$html .= $content['open_graph']['og_description'];
|
||||
$content['html'] .= '<p><i>But we found a short description: </i></p>';
|
||||
$content['html'] .= $content['open_graph']['og_description'];
|
||||
}
|
||||
}
|
||||
|
||||
$entry->setContent($html);
|
||||
$entry->setReadingTime(Utils::getReadingTime($html));
|
||||
$entry->setContent($content['html']);
|
||||
$entry->setReadingTime(Utils::getReadingTime($content['html']));
|
||||
|
||||
if (!empty($content['status'])) {
|
||||
$entry->setHttpStatus($content['status']);
|
||||
|
||||
@ -165,13 +165,6 @@ class EntriesExport
|
||||
$book->addDublinCoreMetadata(DublinCore::CONTRIBUTOR, 'PHP');
|
||||
$book->addDublinCoreMetadata(DublinCore::CONTRIBUTOR, 'wallabag');
|
||||
|
||||
/*
|
||||
* Front page
|
||||
*/
|
||||
if (file_exists($this->logoPath)) {
|
||||
$book->setCoverImage('Cover.png', file_get_contents($this->logoPath), 'image/png');
|
||||
}
|
||||
|
||||
$entryIds = [];
|
||||
$entryCount = \count($this->entries);
|
||||
$i = 0;
|
||||
@ -183,10 +176,19 @@ class EntriesExport
|
||||
// set tags as subjects
|
||||
foreach ($this->entries as $entry) {
|
||||
++$i;
|
||||
|
||||
/*
|
||||
* Front page
|
||||
* Set if there's only one entry in the given set
|
||||
*/
|
||||
if (1 === $entryCount && null !== $entry->getPreviewPicture()) {
|
||||
$book->setCoverImage($entry->getPreviewPicture());
|
||||
}
|
||||
|
||||
foreach ($entry->getTags() as $tag) {
|
||||
$book->setSubject($tag->getLabel());
|
||||
}
|
||||
$filename = sha1($entry->getTitle());
|
||||
$filename = sha1(sprintf('%s:%s', $entry->getUrl(), $entry->getTitle()));
|
||||
|
||||
$publishedBy = $entry->getPublishedBy();
|
||||
$authors = $this->translator->trans('export.unknown');
|
||||
|
||||
@ -1,9 +1,11 @@
|
||||
<div class="card-action">
|
||||
<span class="reading-time grey-text">
|
||||
{% include "@WallabagCore/themes/material/Entry/_reading_time.html.twig" with {'entry': entry} only %}
|
||||
<i class="material-icons hide-on-med-and-down" title="{{ 'entry.view.created_at'|trans }}">today</i>
|
||||
<span class="hide-on-med-and-down"> {{ entry.createdAt|date('Y-m-d') }}</span>
|
||||
</span>
|
||||
<div class="reading-time grey-text">
|
||||
<div class="card-reading-time">{% include "@WallabagCore/themes/material/Entry/_reading_time.html.twig" with {'entry': entry} only %}</div>
|
||||
<div class="card-created-at">
|
||||
<i class="material-icons" title="{{ 'entry.view.created_at'|trans }}">today</i>
|
||||
<span> {{ entry.createdAt|date('Y-m-d') }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="tools right">
|
||||
<li>
|
||||
|
||||
Reference in New Issue
Block a user