Browse Source

fix backfill

gitcitadel
Silberengel 2 weeks ago
parent
commit
74147931f0
  1. 9
      src/Factory/ArticleFactory.php
  2. 4
      src/Repository/ArticleRepository.php
  3. 2
      src/Service/MagazineContentService.php
  4. 4
      src/Service/NostrClient.php

9
src/Factory/ArticleFactory.php

@ -14,8 +14,9 @@ class ArticleFactory
{ {
public function createFromLongFormContentEvent($source): Article public function createFromLongFormContentEvent($source): Article
{ {
if (!\in_array($source->kind, KindsEnum::longformKindValues(), true)) { $kind = (int) ($source->kind ?? 0);
throw new InvalidArgumentException('Source event kind must be a longform kind (30023, 30024, 30817), got '.$source->kind); if (!\in_array($kind, KindsEnum::longformKindValues(), true)) {
throw new InvalidArgumentException('Source event kind must be a longform kind (30023, 30024, 30817), got '.$kind);
} }
$entity = new Article(); $entity = new Article();
$entity->setRaw($source); $entity->setRaw($source);
@ -26,14 +27,14 @@ class ArticleFactory
} }
$entity->setCreatedAt($created); $entity->setCreatedAt($created);
$entity->setContent($source->content); $entity->setContent($source->content);
$entity->setKind(KindsEnum::from($source->kind)); $entity->setKind(KindsEnum::from($kind));
$entity->setPubkey($source->pubkey); $entity->setPubkey($source->pubkey);
$entity->setSig($source->sig); $entity->setSig($source->sig);
$entity->setEventStatus(EventStatusEnum::PUBLISHED); $entity->setEventStatus(EventStatusEnum::PUBLISHED);
$entity->setRatingNegative(0); $entity->setRatingNegative(0);
$entity->setRatingPositive(0); $entity->setRatingPositive(0);
// process tags // process tags
$wikiKinds = $source->kind === KindsEnum::WIKI->value ? [] : null; $wikiKinds = $kind === KindsEnum::WIKI->value ? [] : null;
foreach ($source->tags as $tag) { foreach ($source->tags as $tag) {
if (!\is_array($tag) || !isset($tag[0])) { if (!\is_array($tag) || !isset($tag[0])) {
continue; continue;

4
src/Repository/ArticleRepository.php

@ -48,8 +48,6 @@ class ArticleRepository extends ServiceEntityRepository
return $qb return $qb
->where($conditions) ->where($conditions)
->andWhere('a.content IS NOT NULL')
->andWhere('LENGTH(a.content) > 250') // Only articles with substantial content
->orderBy('a.createdAt', 'DESC') ->orderBy('a.createdAt', 'DESC')
->setFirstResult($offset) ->setFirstResult($offset)
->setMaxResults($limit) ->setMaxResults($limit)
@ -87,8 +85,6 @@ class ArticleRepository extends ServiceEntityRepository
return (int) $qb return (int) $qb
->where($conditions) ->where($conditions)
->andWhere('a.content IS NOT NULL')
->andWhere('LENGTH(a.content) > 250')
->getQuery() ->getQuery()
->getSingleScalarResult(); ->getSingleScalarResult();
} }

2
src/Service/MagazineContentService.php

@ -1017,7 +1017,7 @@ final class MagazineContentService
if ($identifier === '') { if ($identifier === '') {
continue; continue;
} }
if (\in_array($kind, [KindsEnum::LONGFORM->value, KindsEnum::LONGFORM_DRAFT->value], true)) { if (\in_array($kind, KindsEnum::longformKindValues(), true)) {
$slugs[] = $identifier; $slugs[] = $identifier;
if (\count($slugs) >= $maxA) { if (\count($slugs) >= $maxA) {
return $slugs; return $slugs;

4
src/Service/NostrClient.php

@ -425,7 +425,7 @@ class NostrClient
$subscription = new Subscription(); $subscription = new Subscription();
$subscriptionId = $subscription->setId(); $subscriptionId = $subscription->setId();
$filter = new Filter(); $filter = new Filter();
$filter->setKinds(KindsEnum::longformKinds()); $filter->setKinds(KindsEnum::longformKindValues());
$filter->setSince($since); $filter->setSince($since);
$filter->setUntil($until); $filter->setUntil($until);
$requestMessage = new RequestMessage($subscriptionId, [$filter]); $requestMessage = new RequestMessage($subscriptionId, [$filter]);
@ -1132,7 +1132,7 @@ class NostrClient
$subscription = new Subscription(); $subscription = new Subscription();
$subscriptionId = $subscription->setId(); $subscriptionId = $subscription->setId();
$filter = new Filter(); $filter = new Filter();
$filter->setKinds(KindsEnum::longformKinds()); $filter->setKinds(KindsEnum::longformKindValues());
$filter->setTag('#d', $slugs); $filter->setTag('#d', $slugs);
$requestMessage = new RequestMessage($subscriptionId, [$filter]); $requestMessage = new RequestMessage($subscriptionId, [$filter]);

Loading…
Cancel
Save