Update (route)
This commit is contained in:
@@ -4,3 +4,4 @@
|
|||||||
require 'geo_helper.php';
|
require 'geo_helper.php';
|
||||||
require 'platform_helper.php';
|
require 'platform_helper.php';
|
||||||
require 'proxy_helper.php';
|
require 'proxy_helper.php';
|
||||||
|
require 'route_helper.php';
|
||||||
13
app/Helpers/Global/route_helper.php
Normal file
13
app/Helpers/Global/route_helper.php
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
if (! function_exists('get_route_search_result')) {
|
||||||
|
|
||||||
|
function get_route_search_result($query)
|
||||||
|
{
|
||||||
|
|
||||||
|
return route('front.search.results',
|
||||||
|
[
|
||||||
|
'query' => strtolower(urlencode($query)),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -17,14 +17,14 @@ public function search(Request $request)
|
|||||||
return redirect()->back();
|
return redirect()->back();
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect()->to(route('front.search.results',['query' => $request->input('query')]));
|
return redirect()->to(get_route_search_result($request->input('query')));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function searchResults(Request $request, $query)
|
public function searchResults(Request $request, $query)
|
||||||
{
|
{
|
||||||
$page_type = 'search';
|
$page_type = 'search';
|
||||||
|
|
||||||
$query = strtolower($query);
|
$query = urldecode($query);
|
||||||
|
|
||||||
$breadcrumbs = collect([
|
$breadcrumbs = collect([
|
||||||
['name' => 'Home', 'url' => route('front.home')],
|
['name' => 'Home', 'url' => route('front.home')],
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
use App\Jobs\ParseRssPostMetadataJob;
|
use App\Jobs\ParseRssPostMetadataJob;
|
||||||
use App\Models\RssPost;
|
use App\Models\RssPost;
|
||||||
|
use App\Models\ServiceCostUsage;
|
||||||
use Exception;
|
use Exception;
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
use League\HTMLToMarkdown\HtmlConverter;
|
use League\HTMLToMarkdown\HtmlConverter;
|
||||||
@@ -34,7 +35,16 @@ public static function handle(int $rss_post_id)
|
|||||||
|
|
||||||
if ($response->successful()) {
|
if ($response->successful()) {
|
||||||
$raw_html = $response->body();
|
$raw_html = $response->body();
|
||||||
$costs['unblocker'] = calculate_smartproxy_cost(round(strlen($raw_html) / 1024, 2), 'rotating_global');
|
$cost = calculate_smartproxy_cost(round(strlen($raw_html) / 1024, 2), 'rotating_global');
|
||||||
|
|
||||||
|
$service_cost_usage = new ServiceCostUsage;
|
||||||
|
$service_cost_usage->cost = $cost;
|
||||||
|
$service_cost_usage->name = 'smartproxy-CrawlRssPostTask';
|
||||||
|
$service_cost_usage->reference_1 = 'rss_post';
|
||||||
|
$service_cost_usage->reference_2 = strval($rss_post_id);
|
||||||
|
$service_cost_usage->output = null;
|
||||||
|
$service_cost_usage->save();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$raw_html = null;
|
$raw_html = null;
|
||||||
$response->throw();
|
$response->throw();
|
||||||
|
|||||||
@@ -8,6 +8,9 @@
|
|||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Spatie\Feed\Feedable;
|
||||||
|
use Spatie\Feed\FeedItem;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class RssPost
|
* Class RssPost
|
||||||
@@ -33,7 +36,7 @@
|
|||||||
* @property Carbon|null $updated_at
|
* @property Carbon|null $updated_at
|
||||||
* @property Category|null $category
|
* @property Category|null $category
|
||||||
*/
|
*/
|
||||||
class RssPost extends Model
|
class RssPost extends Model implements Feedable
|
||||||
{
|
{
|
||||||
protected $table = 'rss_posts';
|
protected $table = 'rss_posts';
|
||||||
|
|
||||||
@@ -68,4 +71,31 @@ public function category()
|
|||||||
{
|
{
|
||||||
return $this->belongsTo(Category::class);
|
return $this->belongsTo(Category::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getAllKeywordsAttribute()
|
||||||
|
{
|
||||||
|
if (!is_empty($this->keyword_list))
|
||||||
|
{
|
||||||
|
return array_unique(explode(",",$this->keyword_list));
|
||||||
|
}
|
||||||
|
return [];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function toFeedItem(): FeedItem
|
||||||
|
{
|
||||||
|
return FeedItem::create([
|
||||||
|
'id' => $this->id,
|
||||||
|
'title' => $this->title,
|
||||||
|
'summary' => $this->bites,
|
||||||
|
'updated' => $this->published_at,
|
||||||
|
// 'link' => route('front.post', ['slug' => $this->slug, 'category_slug' => $this->category->slug]),
|
||||||
|
'authorName' => 'FutureWalker',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getFeedItems()
|
||||||
|
{
|
||||||
|
return self::with('category')->where('status', 'published')->latest('published_at')->take(60)->get();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ class="d-inline text-secondary small">{{ min_read($post->bites) }}</span>
|
|||||||
<div id="collapse{{ $post->id }}" class="accordion-collapse collapse" aria-labelledby="heading{{ $post->id }}"
|
<div id="collapse{{ $post->id }}" class="accordion-collapse collapse" aria-labelledby="heading{{ $post->id }}"
|
||||||
data-bs-parent="#accordionTechBites">
|
data-bs-parent="#accordionTechBites">
|
||||||
<div class="accordion-body small">
|
<div class="accordion-body small">
|
||||||
|
<div class="fw-bold">The Bite:</div>
|
||||||
<div class="mb-3">{{ $post->bites }}</div>
|
<div class="mb-3">{{ $post->bites }}</div>
|
||||||
|
|
||||||
@if (in_array($post->impact_level, ['medium','high']))
|
@if (in_array($post->impact_level, ['medium','high']))
|
||||||
@@ -69,7 +70,7 @@ class="d-inline text-secondary small">{{ min_read($post->bites) }}</span>
|
|||||||
@endif
|
@endif
|
||||||
@if ($post->entities)
|
@if ($post->entities)
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
More about: @foreach( $post->keywords as $keyword) <a class="ms-1" href="{{ route('front.search.results',['query' => strtolower($keyword) ]) }}">{{ $keyword }}</a> @endforeach
|
More about: @foreach( $post->all_keywords as $keyword) <a class="ms-1" href="{{ get_route_search_result($keyword) }}">{{ $keyword }}</a> @endforeach
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
Reference in New Issue
Block a user