Sync
This commit is contained in:
BIN
app/Http/Controllers/.DS_Store
vendored
BIN
app/Http/Controllers/.DS_Store
vendored
Binary file not shown.
70
app/Http/Controllers/Front/FrontDiscoverController.php
Normal file
70
app/Http/Controllers/Front/FrontDiscoverController.php
Normal file
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Front;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Category;
|
||||
use Artesaos\SEOTools\Facades\SEOTools;
|
||||
use Illuminate\Http\Request;
|
||||
use JsonLd\Context;
|
||||
|
||||
class FrontDiscoverController extends Controller
|
||||
{
|
||||
public function discover(Request $request, $category_slug = null)
|
||||
{
|
||||
$tools_count = round_to_nearest_base(700);
|
||||
|
||||
$category = null;
|
||||
|
||||
if (! is_empty($category_slug)) {
|
||||
$category = Category::where('slug', $category_slug)->first();
|
||||
|
||||
if (is_null($category)) {
|
||||
return abort(404);
|
||||
}
|
||||
}
|
||||
|
||||
if (! is_null($category)) {
|
||||
$breadcrumbs = collect([
|
||||
['name' => 'Home', 'url' => route('front.home')],
|
||||
['name' => 'Discover AI Tools', 'url' => route('front.discover.home')],
|
||||
['name' => $category->name.' AI Tools', 'url' => null],
|
||||
]);
|
||||
|
||||
SEOTools::metatags();
|
||||
SEOTools::twitter();
|
||||
SEOTools::opengraph();
|
||||
SEOTools::jsonLd();
|
||||
SEOTools::setTitle($category->name.' AI Tools', false);
|
||||
//SEOTools::setDescription($description);
|
||||
} else {
|
||||
$breadcrumbs = collect([
|
||||
['name' => 'Home', 'url' => route('front.home')],
|
||||
['name' => 'Discover AI Tools', 'url' => null],
|
||||
]);
|
||||
|
||||
SEOTools::metatags();
|
||||
SEOTools::twitter();
|
||||
SEOTools::opengraph();
|
||||
SEOTools::jsonLd();
|
||||
SEOTools::setTitle("{$tools_count} over AI Tools for you", false);
|
||||
//SEOTools::setDescription($description);
|
||||
}
|
||||
|
||||
// breadcrumb json ld
|
||||
$listItems = [];
|
||||
|
||||
foreach ($breadcrumbs as $index => $breadcrumb) {
|
||||
$listItems[] = [
|
||||
'name' => $breadcrumb['name'],
|
||||
'url' => $breadcrumb['url'],
|
||||
];
|
||||
}
|
||||
|
||||
$breadcrumb_context = Context::create('breadcrumb_list', [
|
||||
'itemListElement' => $listItems,
|
||||
]);
|
||||
|
||||
return view('front.discover', compact('breadcrumbs', 'breadcrumb_context', 'category'));
|
||||
}
|
||||
}
|
||||
83
app/Http/Controllers/Front/FrontHomeController.php
Normal file
83
app/Http/Controllers/Front/FrontHomeController.php
Normal file
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Front;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Artesaos\SEOTools\Facades\SEOMeta;
|
||||
use Artesaos\SEOTools\Facades\SEOTools;
|
||||
use GrahamCampbell\Markdown\Facades\Markdown;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class FrontHomeController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.home');
|
||||
}
|
||||
|
||||
public function terms(Request $request)
|
||||
{
|
||||
$markdown = file_get_contents(resource_path('markdown/terms.md'));
|
||||
|
||||
$title = 'Terms of Service';
|
||||
$description = 'Our Terms of Service outline your rights, responsibilities, and the standards we uphold for a seamless experience.';
|
||||
|
||||
SEOTools::metatags();
|
||||
SEOTools::twitter();
|
||||
SEOTools::opengraph();
|
||||
SEOTools::jsonLd();
|
||||
SEOTools::setTitle($title);
|
||||
SEOTools::setDescription($description);
|
||||
SEOMeta::setRobots('noindex');
|
||||
|
||||
$content = Markdown::convert($markdown)->getContent();
|
||||
|
||||
//$content = $this->injectTailwindClasses($content);
|
||||
|
||||
return view('front.pages', compact('content', 'title', 'description'));
|
||||
}
|
||||
|
||||
public function privacy(Request $request)
|
||||
{
|
||||
$markdown = file_get_contents(resource_path('markdown/privacy.md'));
|
||||
|
||||
$title = 'Privacy Policy';
|
||||
$description = 'Our Privacy Policy provides clarity about the data we collect and how we use it, ensuring your peace of mind.';
|
||||
|
||||
SEOTools::metatags();
|
||||
SEOTools::twitter();
|
||||
SEOTools::opengraph();
|
||||
SEOTools::jsonLd();
|
||||
SEOTools::setTitle($title);
|
||||
SEOTools::setDescription($description);
|
||||
SEOMeta::setRobots('noindex');
|
||||
|
||||
$content = Markdown::convert($markdown)->getContent();
|
||||
|
||||
//$content = $this->injectTailwindClasses($content);
|
||||
|
||||
return view('front.pages', compact('content', 'title', 'description'));
|
||||
}
|
||||
|
||||
public function disclaimer(Request $request)
|
||||
{
|
||||
$markdown = file_get_contents(resource_path('markdown/disclaimer.md'));
|
||||
|
||||
$title = 'Disclaimer';
|
||||
$description = 'AI Buddy Tool provides the content on this website purely for informational purposes and should not be interpreted as legal, financial, or medical guidance.';
|
||||
|
||||
SEOTools::metatags();
|
||||
SEOTools::twitter();
|
||||
SEOTools::opengraph();
|
||||
SEOTools::jsonLd();
|
||||
SEOTools::setTitle($title);
|
||||
SEOTools::setDescription($description);
|
||||
SEOMeta::setRobots('noindex');
|
||||
|
||||
$content = Markdown::convert($markdown)->getContent();
|
||||
|
||||
//$content = $this->injectTailwindClasses($content);
|
||||
|
||||
return view('front.pages', compact('content', 'title', 'description'));
|
||||
}
|
||||
}
|
||||
10
app/Http/Controllers/Front/FrontSearchController.php
Normal file
10
app/Http/Controllers/Front/FrontSearchController.php
Normal file
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Front;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
|
||||
class FrontSearchController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Front;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class HomeController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.home');
|
||||
}
|
||||
}
|
||||
36
app/Http/Controllers/TestOnPageController.php
Normal file
36
app/Http/Controllers/TestOnPageController.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Helpers\FirstParty\DFS\DFSCommon;
|
||||
use App\Helpers\FirstParty\DFS\DFSOnPage;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class TestOnPageController extends Controller
|
||||
{
|
||||
public function listId(Request $request)
|
||||
{
|
||||
$response = DFSOnPage::listId(7);
|
||||
|
||||
$tasks = DFSCommon::getTasks($response);
|
||||
|
||||
foreach ($tasks as $task) {
|
||||
$task_result = DFSCommon::getTaskResult($task);
|
||||
|
||||
dump($task_result);
|
||||
}
|
||||
}
|
||||
|
||||
public function taskPost(Request $request)
|
||||
{
|
||||
$response = DFSOnPage::taskPost('dataforseo.com', 1);
|
||||
|
||||
$tasks = DFSCommon::getTasks($response);
|
||||
|
||||
foreach ($tasks as $task) {
|
||||
$task_result = DFSCommon::getTaskResult($task);
|
||||
|
||||
dump($task_result);
|
||||
}
|
||||
}
|
||||
}
|
||||
38
app/Http/Controllers/Tests/GeneralTestController.php
Normal file
38
app/Http/Controllers/Tests/GeneralTestController.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Tests;
|
||||
|
||||
use App\Helpers\FirstParty\DFS\DFSBacklinks;
|
||||
use App\Helpers\FirstParty\DFS\DFSCommon;
|
||||
use App\Helpers\FirstParty\DFS\DFSOnPage;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Jobs\SaveDFSToCandidateDomainsJob;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class GeneralTestController extends Controller
|
||||
{
|
||||
public function onPageList(Request $request)
|
||||
{
|
||||
$response = DFSOnPage::listId(7);
|
||||
|
||||
$tasks = DFSCommon::getTasks($response);
|
||||
|
||||
foreach ($tasks as $task) {
|
||||
$task_result = DFSCommon::getTaskResult($task);
|
||||
|
||||
dump($task_result);
|
||||
}
|
||||
}
|
||||
|
||||
public function processBacklinks(Request $request)
|
||||
{
|
||||
SaveDFSToCandidateDomainsJob::dispatch()->onConnection('default')->onQueue('default');
|
||||
}
|
||||
|
||||
public function backlinks(Request $request)
|
||||
{
|
||||
$dfs_results = DFSBacklinks::backlinksPaginationLive('topai.tools', null);
|
||||
|
||||
dd($dfs_results);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user