twitter bot added

This commit is contained in:
Benjamin Takats
2023-01-15 23:29:59 +01:00
parent ea05c93365
commit 05887c7daa
11 changed files with 432 additions and 15 deletions

View File

@@ -0,0 +1,83 @@
<?php
namespace App\Observers;
use App\Models\CourseEvent;
use App\Traits\TwitterTrait;
class CourseEventObserver
{
use TwitterTrait;
/**
* Handle the CourseEvent "created" event.
*
* @param \App\Models\CourseEvent $courseEvent
*
* @return void
*/
public function created(CourseEvent $courseEvent)
{
if (config('feeds.services.twitterAccountId')) {
$this->setNewAccessToken(1);
$text = sprintf("Unser Dozent %s hat einen neuen Kurs-Termin eingestellt:\n\n%s\n\n%s\n\n%s\n\n#Bitcoin #Kurs #Education #Einundzwanzig",
$courseEvent->course->lecturer->name,
$courseEvent->course->name,
str($courseEvent->course->description)->limit(100),
url()->route('school.landingPage.lecturer',
['country' => 'de', 'lecturer' => $courseEvent->course->lecturer]),
);
$this->postTweet($text);
}
}
/**
* Handle the CourseEvent "updated" event.
*
* @param \App\Models\CourseEvent $courseEvent
*
* @return void
*/
public function updated(CourseEvent $courseEvent)
{
//
}
/**
* Handle the CourseEvent "deleted" event.
*
* @param \App\Models\CourseEvent $courseEvent
*
* @return void
*/
public function deleted(CourseEvent $courseEvent)
{
//
}
/**
* Handle the CourseEvent "restored" event.
*
* @param \App\Models\CourseEvent $courseEvent
*
* @return void
*/
public function restored(CourseEvent $courseEvent)
{
//
}
/**
* Handle the CourseEvent "force deleted" event.
*
* @param \App\Models\CourseEvent $courseEvent
*
* @return void
*/
public function forceDeleted(CourseEvent $courseEvent)
{
//
}
}

View File

@@ -0,0 +1,83 @@
<?php
namespace App\Observers;
use App\Models\Course;
use App\Traits\TwitterTrait;
class CourseObserver
{
use TwitterTrait;
/**
* Handle the Course "created" event.
*
* @param \App\Models\Course $course
*
* @return void
*/
public function created(Course $course)
{
if (config('feeds.services.twitterAccountId')) {
$this->setNewAccessToken(1);
$text = sprintf("Unser Dozent %s hat einen neuen Kurs eingestellt:\n\n%s\n\n%s\n\n%s\n\n#Bitcoin #Kurs #Education #Einundzwanzig",
$course->lecturer->name,
$course->name,
str($course->description)->limit(100),
url()->route('school.landingPage.lecturer',
['country' => 'de', 'lecturer' => $course->lecturer]),
);
$this->postTweet($text);
}
}
/**
* Handle the Course "updated" event.
*
* @param \App\Models\Course $course
*
* @return void
*/
public function updated(Course $course)
{
//
}
/**
* Handle the Course "deleted" event.
*
* @param \App\Models\Course $course
*
* @return void
*/
public function deleted(Course $course)
{
//
}
/**
* Handle the Course "restored" event.
*
* @param \App\Models\Course $course
*
* @return void
*/
public function restored(Course $course)
{
//
}
/**
* Handle the Course "force deleted" event.
*
* @param \App\Models\Course $course
*
* @return void
*/
public function forceDeleted(Course $course)
{
//
}
}

View File

@@ -0,0 +1,80 @@
<?php
namespace App\Observers;
use App\Models\Meetup;
use App\Traits\TwitterTrait;
class MeetupObserver
{
use TwitterTrait;
/**
* Handle the Meetup "created" event.
*
* @param \App\Models\Meetup $meetup
*
* @return void
*/
public function created(Meetup $meetup)
{
if (config('feeds.services.twitterAccountId')) {
$this->setNewAccessToken(1);
$text = sprintf("Eine neue Meetup Gruppe wurde hinzugefügt:\n\n%s\n\n%s\n\n#Bitcoin #Meetup #Einundzwanzig",
$meetup->name,
url()->route('meetup.landing', ['country' => 'de', 'meetup' => $meetup])
);
$this->postTweet($text);
}
}
/**
* Handle the Meetup "updated" event.
*
* @param \App\Models\Meetup $meetup
*
* @return void
*/
public function updated(Meetup $meetup)
{
//
}
/**
* Handle the Meetup "deleted" event.
*
* @param \App\Models\Meetup $meetup
*
* @return void
*/
public function deleted(Meetup $meetup)
{
//
}
/**
* Handle the Meetup "restored" event.
*
* @param \App\Models\Meetup $meetup
*
* @return void
*/
public function restored(Meetup $meetup)
{
//
}
/**
* Handle the Meetup "force deleted" event.
*
* @param \App\Models\Meetup $meetup
*
* @return void
*/
public function forceDeleted(Meetup $meetup)
{
//
}
}

View File

@@ -0,0 +1,81 @@
<?php
namespace App\Observers;
use App\Models\OrangePill;
use App\Traits\TwitterTrait;
class OrangePillObserver
{
use TwitterTrait;
/**
* Handle the OrangePill "created" event.
*
* @param \App\Models\OrangePill $orangePill
*
* @return void
*/
public function created(OrangePill $orangePill)
{
if (config('feeds.services.twitterAccountId')) {
$this->setNewAccessToken(1);
$text = sprintf("In einem der weltweiten Bücherschränke wurde ein Bitcoin-Buch reingestellt:\n\n%s\n\n%s\n\n%s\n\n#Bitcoin #Education #Einundzwanzig",
$orangePill->bookCase->title,
$orangePill->bookCase->address,
url()->route('bookCases.comment.bookcase', ['country' => 'de', 'bookCase' => $orangePill->bookCase]),
);
$this->postTweet($text);
}
}
/**
* Handle the OrangePill "updated" event.
*
* @param \App\Models\OrangePill $orangePill
*
* @return void
*/
public function updated(OrangePill $orangePill)
{
//
}
/**
* Handle the OrangePill "deleted" event.
*
* @param \App\Models\OrangePill $orangePill
*
* @return void
*/
public function deleted(OrangePill $orangePill)
{
//
}
/**
* Handle the OrangePill "restored" event.
*
* @param \App\Models\OrangePill $orangePill
*
* @return void
*/
public function restored(OrangePill $orangePill)
{
//
}
/**
* Handle the OrangePill "force deleted" event.
*
* @param \App\Models\OrangePill $orangePill
*
* @return void
*/
public function forceDeleted(OrangePill $orangePill)
{
//
}
}