namespace App\Jobs;
use App\Fluidbook\Link\LinksData;
+use App\Models\FluidbookAuditLink;
use App\Models\FluidbookPublication;
use App\Models\FluidbookCollection;
+use Cubist\Net\Util;
use Cubist\Util\CommandLine;
use Cubist\Util\Files\Files;
use Illuminate\Support\Facades\Log;
});
foreach ($links as $link) {
+ if($link['video_service'] === "youtube") {
+ if(FluidbookAuditLink::youtubeVideoExist($link['to'])) {
+ $link['to'] = "https://youtu.be/".$link['to'];
+ }
+ }
+
+ // Error code start with 4 or 5
+ // Redirection code start with 3
+ $httpCode = FluidbookAuditLink::getHttpCode($link['to']);
+
$externalLinks[] = [
- 'fluidbook_id' => $publication['fluidbook'],
- 'page' => $link['page'],
+ 'fluidbook_id' => intval($publication['fluidbook']),
+ 'page' => intval($link['page']),
'link_id' => $link['uid'],
- 'error_code' => false,
+ 'error_code' => str_starts_with($httpCode, 4) || str_starts_with($httpCode, 5) ? $httpCode : "",
'first_time_error' => '', // Datetime of the first time we saw this error
- 'last_date_test' => '',
+ 'last_date_test' => time(),
'url' => $link['to'],
'new_url' => '',
- 'redirection_code' => '',
+ 'redirection_code' => str_starts_with($httpCode, 3) ? $httpCode : "",
'final_code_url' => '',
'final_target' => '',
+ 'created_at' => date('Y-m-d H:i:s'),
+ 'updated_at'=> date('Y-m-d H:i:s')
];
}
- //$externalLinks[] = array_filter($links);
}
- dd($externalLinks);
+
+ $audit = FluidbookAuditLink::insert($externalLinks);
Log::info('Job exécuté avec succès');
}
$this->addField('fluidbook_id', Integer::class, '',[]);
$this->addField('page', Integer::class, '',[]);
- $this->addField('link_id', Integer::class, '',[]);
+ $this->addField('link_id', Text::class, '',[]);
$this->addField('error_code', Text::class, '',[]);
- $this->addField('first_time_error', Text::class, '',[]);
- $this->addField('last_date_test', Text::class, '',[]);
+ $this->addField('first_time_error', Text::class, '',['default' => '']);
+ $this->addField('last_date_test', Text::class, '',['default' => '']);
$this->addField('url', Text::class, '',[]);
$this->addField('new_url', Text::class, '',['default' => '']);
$this->addField('redirection_code', Text::class, '',[]);