From 8c9c1ca0ba3379e3dd949463c749e3c65b1fe24a Mon Sep 17 00:00:00 2001 From: arwaawan Date: Thu, 25 Mar 2021 23:12:13 -0500 Subject: [PATCH 1/3] update results migration and enum types --- composer.json | 10 ++++---- ...2020_01_01_155000_create_results_table.php | 1 + src/Enum/ResultType.php | 24 +++++++++++++++++++ src/Nova/Place.php | 4 +++- src/Nova/PlaceDetails.php | 4 +++- src/Nova/PlaceHours.php | 4 +++- src/Nova/Result.php | 14 +++++++++-- src/Nova/Webpage.php | 2 ++ 8 files changed, 53 insertions(+), 10 deletions(-) create mode 100644 src/Enum/ResultType.php diff --git a/composer.json b/composer.json index aa17b66..cfe8d03 100644 --- a/composer.json +++ b/composer.json @@ -17,14 +17,14 @@ "require": { "php": "^7.3|^8.0", "drewroberts/media": "^3.3.0", - "tipoff/addresses": "^2.5.0", - "tipoff/authorization": "^2.5.5", - "tipoff/laravel-google-api": "^1.3.2", + "tipoff/addresses": "^2.6.0", + "tipoff/authorization": "^2.7.0", + "tipoff/laravel-google-api": "^1.3.3", "tipoff/laravel-serpapi": "^1.0.5", - "tipoff/support": "^1.7.2" + "tipoff/support": "^1.8.7" }, "require-dev": { - "tipoff/test-support": "^1.3.0" + "tipoff/test-support": "^1.4.0" }, "autoload": { "psr-4": { diff --git a/database/migrations/2020_01_01_155000_create_results_table.php b/database/migrations/2020_01_01_155000_create_results_table.php index 986d027..c65144e 100644 --- a/database/migrations/2020_01_01_155000_create_results_table.php +++ b/database/migrations/2020_01_01_155000_create_results_table.php @@ -15,6 +15,7 @@ public function up() $table->foreignIdFor(app('ranking'))->index(); $table->string('type')->index(); // Example: 'Organic', 'Local', 'Ads', 'Inline Video' $table->unsignedTinyInteger('position')->index(); + $table->foreignIdFor(app(‘result’), 'parent_id')->nullable(); // Parent Result // resultable_id, resultable_type either Tipoff\Seo\Models\Webpage or Place $table->morphs('resultable'); diff --git a/src/Enum/ResultType.php b/src/Enum/ResultType.php new file mode 100644 index 0000000..952cc91 --- /dev/null +++ b/src/Enum/ResultType.php @@ -0,0 +1,24 @@ +required()->sortable(), + Select::make('Type')->options([ + ResultType::ORGANIC_LISTING => 'Organic Listings', + ResultType::LOCAL_LISTING => 'Local Listings', + ResultType::FEATURED_SNIPPET => 'Featured Snippet', + ResultType::INLINE_VIDEO_LISTINGS => 'Inline Video Listings', + ResultType::ADS => 'Product', + ])->required(), Number::make('Position')->required()->min(0)->max(255)->sortable(), nova('ranking') ? BelongsTo::make('Ranking', 'ranking', nova('ranking'))->sortable() : null, diff --git a/src/Nova/Webpage.php b/src/Nova/Webpage.php index 52ece31..c87fc7b 100644 --- a/src/Nova/Webpage.php +++ b/src/Nova/Webpage.php @@ -25,6 +25,8 @@ class Webpage extends BaseResource public static $group = 'SEO'; + public static $displayInNavigation = false; //don't show resource in navigation + public function fieldsForIndex(NovaRequest $request) { return array_filter([ From 30fff01556729bf5e1f57cd3911c0a4c3f30d9ca Mon Sep 17 00:00:00 2001 From: arwaawan3 Date: Fri, 26 Mar 2021 04:12:31 +0000 Subject: [PATCH 2/3] Fix styling --- src/Nova/Result.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Nova/Result.php b/src/Nova/Result.php index af6add7..82049ff 100644 --- a/src/Nova/Result.php +++ b/src/Nova/Result.php @@ -9,12 +9,11 @@ use Laravel\Nova\Fields\ID; use Laravel\Nova\Fields\MorphTo; use Laravel\Nova\Fields\Number; -use Laravel\Nova\Fields\Text; use Laravel\Nova\Fields\Select; use Laravel\Nova\Http\Requests\NovaRequest; use Laravel\Nova\Panel; -use Tipoff\Support\Nova\BaseResource; use Tipoff\Seo\Enum\ResultType; +use Tipoff\Support\Nova\BaseResource; class Result extends BaseResource { From 89ef5f6a009b449a98a4731f7ee9cdc9e883d22e Mon Sep 17 00:00:00 2001 From: Drew Roberts Date: Fri, 26 Mar 2021 22:16:58 -0400 Subject: [PATCH 3/3] Resolve result class from service container --- database/migrations/2020_01_01_155000_create_results_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/2020_01_01_155000_create_results_table.php b/database/migrations/2020_01_01_155000_create_results_table.php index 29107bd..7fe6e9c 100644 --- a/database/migrations/2020_01_01_155000_create_results_table.php +++ b/database/migrations/2020_01_01_155000_create_results_table.php @@ -15,7 +15,7 @@ public function up() $table->foreignIdFor(app('ranking'))->index(); $table->string('type')->index(); // Example: 'Organic', 'Local', 'Ads', 'Inline Video' $table->unsignedTinyInteger('position')->index(); - $table->foreignIdFor(app(‘result’), 'parent_id')->nullable(); // Parent Result + $table->foreignIdFor(app('result'), 'parent_id')->nullable(); // Parent Result // resultable_id, resultable_type either Tipoff\Seo\Models\Webpage or Place $table->morphs('resultable');