Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/job-board.corals.io/Corals/modules/Jobs/Widgets/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/job-board.corals.io/Corals/modules/Jobs/Widgets/AdminJobsCountEachCategoryWidget.php
<?php

namespace Corals\Modules\Jobs\Widgets;

use Corals\Modules\Jobs\Charts\JobsRatio;
use Corals\Modules\Jobs\Models\Job;
use Corals\Modules\Utility\Models\Category\Category;
use Illuminate\Support\Facades\DB;

class AdminJobsCountEachCategoryWidget
{

    function __construct()
    {
    }

    function run($args)
    {
        $result = Category::query()->join('utility_model_has_category', 'utility_categories.id', '=',
            'utility_model_has_category.category_id')
            ->select('utility_model_has_category.category_id', 'utility_categories.name',
                DB::raw('count(utility_model_has_category.model_id) as count'))
            ->where('utility_model_has_category.model_type', '=', getMorphAlias(Job::class))
            ->groupBy('utility_model_has_category.category_id')
            ->pluck('count', 'name');

        $result = $result->toArray();
        $chart = new JobsRatio();
        $chart->labels(array_keys($result));
        $chart->dataset(trans('Jobs::labels.job.job'), 'pie', array_values($result));

        $chart->options([
            'plugins' => '{
                    colorschemes: {
                        scheme: \'brewer.Paired12\'
                    }
                }'
        ]);

        return view('Corals::chart')->with(['chart' => $chart])->render();
    }

}

Spamworldpro Mini