radarrplexorganizrnginxsonarrdashboardsabnzbdheimdallembycouchpotatonzbgetbookmarkapplication-dashboardmuximuxlandingpagestartpagelandinghtpcserverhomepage
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.4 KiB
61 lines
1.4 KiB
<?php
|
|
|
|
namespace App\Console\Commands;
|
|
|
|
use Illuminate\Console\Command;
|
|
use App\Application;
|
|
use App\SupportedApps;
|
|
|
|
class RegisterApp extends Command
|
|
{
|
|
/**
|
|
* The name and signature of the console command.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $signature = 'register:app {folder}';
|
|
|
|
/**
|
|
* The console command description.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $description = 'Add a local app to the registry';
|
|
|
|
/**
|
|
* Create a new command instance.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
}
|
|
|
|
/**
|
|
* Execute the console command.
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public function handle()
|
|
{
|
|
$folder = $this->argument('folder');
|
|
$json = app_path('SupportedApps/'.$folder.'/app.json');
|
|
if(file_exists($json)) {
|
|
$app = json_decode(file_get_contents($json));
|
|
$exists = Application::find($app->appid);
|
|
if($exists) {
|
|
$this->error('This app is already registered');
|
|
exit;
|
|
}
|
|
// Doesn't exist so add it
|
|
SupportedApps::saveApp($app, new Application);
|
|
$this->info("Application Added - ".$app->name." - ".$app->appid);
|
|
|
|
} else {
|
|
$this->error('Could not find '.$json);
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|