rattfieldnz /
shodan
| Conditions | 1 |
| Paths | 1 |
| Total Lines | 3 |
| Code Lines | 1 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 0 |
| CRAP Score | 2 |
| Changes | 0 | ||
| Metric | Value |
|---|---|
| eloc | 1 |
| c | 0 |
| b | 0 |
| f | 0 |
| dl | 0 |
| loc | 3 |
| ccs | 0 |
| cts | 0 |
| cp | 0 |
| rs | 10 |
| cc | 1 |
| nc | 1 |
| nop | 0 |
| crap | 2 |
| 1 | <?php |
||
|
0 ignored issues
–
show
Coding Style
introduced
by
Loading history...
|
|||
| 2 | |||
|
0 ignored issues
–
show
|
|||
| 3 | namespace RattfieldNz\Shodan; |
||
| 4 | |||
| 5 | use Illuminate\Support\Arr; |
||
| 6 | use Illuminate\Support\ServiceProvider; |
||
| 7 | use RattfieldNz\SafeUrls\SafeUrls; |
||
|
0 ignored issues
–
show
The type
RattfieldNz\SafeUrls\SafeUrls was not found. Maybe you did not declare it correctly or list all dependencies?
The issue could also be caused by a filter entry in the build configuration.
If the path has been excluded in your configuration, e.g. filter:
dependency_paths: ["lib/*"]
For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths Loading history...
|
|||
| 8 | |||
| 9 | class ShodanServiceProvider extends ServiceProvider |
||
|
0 ignored issues
–
show
|
|||
| 10 | { |
||
|
0 ignored issues
–
show
|
|||
| 11 | 5 | const CONFIG_PATH = __DIR__.'/../config/shodan.php'; |
|
|
0 ignored issues
–
show
|
|||
| 12 | |||
| 13 | 5 | public function boot() |
|
|
0 ignored issues
–
show
|
|||
| 14 | 5 | { |
|
|
0 ignored issues
–
show
|
|||
| 15 | 5 | $this->publishes([ |
|
|
0 ignored issues
–
show
|
|||
| 16 | 5 | self::CONFIG_PATH => config_path('shodan.php'), |
|
|
0 ignored issues
–
show
|
|||
| 17 | ], 'config'); |
||
| 18 | 5 | } |
|
|
0 ignored issues
–
show
|
|||
| 19 | |||
| 20 | 5 | public function register() |
|
|
0 ignored issues
–
show
|
|||
| 21 | 5 | { |
|
|
0 ignored issues
–
show
|
|||
| 22 | 5 | $this->mergeConfigFrom( |
|
|
0 ignored issues
–
show
|
|||
| 23 | self::CONFIG_PATH, |
||
| 24 | 'shodan' |
||
| 25 | ); |
||
| 26 | |||
| 27 | 5 | $this->app->alias(Shodan::class, 'shodan'); |
|
|
0 ignored issues
–
show
|
|||
| 28 | 5 | ||
| 29 | $this->app->bind('shodan', function () { |
||
|
0 ignored issues
–
show
|
|||
| 30 | return new Shodan(); |
||
| 31 | }); |
||
|
0 ignored issues
–
show
|
|||
| 32 | } |
||
|
0 ignored issues
–
show
|
|||
| 33 | |||
| 34 | /** |
||
|
0 ignored issues
–
show
|
|||
| 35 | * Get the services provided by the provider. |
||
| 36 | * |
||
| 37 | * @return array |
||
|
0 ignored issues
–
show
|
|||
| 38 | */ |
||
| 39 | public function provides() |
||
|
0 ignored issues
–
show
|
|||
| 40 | { |
||
|
0 ignored issues
–
show
|
|||
| 41 | return ['shodan']; |
||
|
0 ignored issues
–
show
|
|||
| 42 | } |
||
|
0 ignored issues
–
show
|
|||
| 43 | |||
| 44 | /** |
||
|
0 ignored issues
–
show
|
|||
| 45 | * Console-specific booting. |
||
| 46 | * |
||
| 47 | * @return void |
||
|
0 ignored issues
–
show
|
|||
| 48 | */ |
||
| 49 | public function bootForConsole() |
||
|
0 ignored issues
–
show
|
|||
| 50 | { |
||
|
0 ignored issues
–
show
|
|||
| 51 | // Publishing the configuration file. |
||
|
0 ignored issues
–
show
|
|||
| 52 | $this->publishes([ |
||
|
0 ignored issues
–
show
|
|||
| 53 | __DIR__.'/../config/shodan.php' => config_path('shodan.php'), |
||
|
0 ignored issues
–
show
|
|||
| 54 | ], 'shodan'); |
||
| 55 | |||
| 56 | // Registering package commands. |
||
|
0 ignored issues
–
show
|
|||
| 57 | $this->commands(['shodan']); |
||
|
0 ignored issues
–
show
|
|||
| 58 | } |
||
|
0 ignored issues
–
show
|
|||
| 59 | |||
| 60 | /** |
||
|
0 ignored issues
–
show
|
|||
| 61 | * Merge the given configuration with the existing configuration. |
||
| 62 | * |
||
| 63 | * @param string $path |
||
|
0 ignored issues
–
show
|
|||
| 64 | * @param string $key |
||
|
0 ignored issues
–
show
|
|||
| 65 | * |
||
| 66 | * @return void |
||
|
0 ignored issues
–
show
|
|||
| 67 | */ |
||
| 68 | protected function mergeConfigFrom($path, $key) |
||
|
0 ignored issues
–
show
|
|||
| 69 | { |
||
|
0 ignored issues
–
show
|
|||
| 70 | $config = $this->app['config']->get($key, []); |
||
|
0 ignored issues
–
show
|
|||
| 71 | $this->app['config']->set($key, $this->mergeConfig($config, require $path)); |
||
|
0 ignored issues
–
show
|
|||
| 72 | } |
||
|
0 ignored issues
–
show
|
|||
| 73 | |||
| 74 | /** |
||
|
0 ignored issues
–
show
|
|||
| 75 | * Merges the configs together and takes multi-dimensional arrays into account. |
||
|
0 ignored issues
–
show
|
|||
| 76 | * |
||
| 77 | * @param array $original |
||
|
0 ignored issues
–
show
|
|||
| 78 | * @param array $merging |
||
|
0 ignored issues
–
show
|
|||
| 79 | * |
||
| 80 | * @return array |
||
|
0 ignored issues
–
show
|
|||
| 81 | */ |
||
| 82 | protected function mergeConfig(array $original, array $merging) |
||
|
0 ignored issues
–
show
|
|||
| 83 | { |
||
|
0 ignored issues
–
show
|
|||
| 84 | $array = array_merge($original, $merging); |
||
|
0 ignored issues
–
show
|
|||
| 85 | foreach ($original as $key => $value) { |
||
|
0 ignored issues
–
show
|
|||
| 86 | if (!is_array($value)) { |
||
|
0 ignored issues
–
show
|
|||
| 87 | continue; |
||
|
0 ignored issues
–
show
|
|||
| 88 | } |
||
|
0 ignored issues
–
show
|
|||
| 89 | if (!Arr::exists($merging, $key)) { |
||
|
0 ignored issues
–
show
|
|||
| 90 | continue; |
||
|
0 ignored issues
–
show
|
|||
| 91 | } |
||
|
0 ignored issues
–
show
|
|||
| 92 | if (is_numeric($key)) { |
||
|
0 ignored issues
–
show
|
|||
| 93 | continue; |
||
|
0 ignored issues
–
show
|
|||
| 94 | } |
||
|
0 ignored issues
–
show
|
|||
| 95 | $array[$key] = $this->mergeConfig($value, $merging[$key]); |
||
|
0 ignored issues
–
show
|
|||
| 96 | } |
||
|
0 ignored issues
–
show
|
|||
| 97 | |||
| 98 | return $array; |
||
|
0 ignored issues
–
show
|
|||
| 99 | } |
||
|
0 ignored issues
–
show
|
|||
| 100 | } |
||
|
0 ignored issues
–
show
|
|||
| 101 |