Browse Source

Initial supported apps support

pull/74/head
KodeStar 7 years ago
parent
commit
3e02d92105
  1. 8
      app/Http/Controllers/ItemController.php
  2. 4
      app/Item.php
  3. 2
      app/SupportedApps/Contracts/Applications.php
  4. 5
      app/SupportedApps/Nzbget.php
  5. 4
      app/SupportedApps/Plex.php
  6. 4
      public/css/app.css
  7. 2
      public/mix-manifest.json
  8. 6
      resources/assets/sass/_app.scss
  9. 4
      resources/views/items/form.blade.php
  10. 5
      resources/views/items/scripts.blade.php

8
app/Http/Controllers/ItemController.php

@ -246,7 +246,13 @@ class ItemController extends Controller
public function appload(Request $request)
{
$app = $request->input('app');
return "a: ".$app;
if($app) {
$all_supported = Item::supportedList();
$app_details = new $all_supported[$app];
}
$output['icon'] = $app_details->icon();
$output['colour'] = $app_details->defaultColour();
return json_encode($output);
}

4
app/Item.php

@ -26,8 +26,8 @@ class Item extends Model
public static function supportedList()
{
return [
'NZBGet' => App\SupportedApps\Nzbget::class,
'Plex' => App\SupportedApps\Plex::class,
'NZBGet' => \App\SupportedApps\Nzbget::class,
'Plex' => \App\SupportedApps\Plex::class,
];
}
public static function supportedOptions()

2
app/SupportedApps/Contracts/Applications.php

@ -3,5 +3,7 @@
interface Applications {
public function defaultColour();
public function icon();
}

5
app/SupportedApps/Nzbget.php

@ -5,4 +5,9 @@ class Nzbget implements Contracts\Applications {
{
return '#ccc';
}
public function icon()
{
return 'supportedapps/nzbget.png';
}
}

4
app/SupportedApps/Plex.php

@ -5,4 +5,8 @@ class Plex implements Contracts\Applications {
{
return '#222';
}
public function icon()
{
return 'supportedapps/plex.png';
}
}

4
public/css/app.css

@ -1003,6 +1003,10 @@ a.settinglink {
font-weight: 700;
}
#appimage img {
max-width: 150px;
}
/*! Huebee v2.0.0
http://huebee.buzz
---------------------------------------------- */

2
public/mix-manifest.json

@ -1,4 +1,4 @@
{
"/css/app.css": "/css/app.css?id=e01da6a30207cefea3dd",
"/css/app.css": "/css/app.css?id=69336a09561650860b52",
"/js/app.js": "/js/app.js?id=2dffa24cf7255229e085"
}

6
resources/assets/sass/_app.scss

@ -640,4 +640,10 @@ div.create {
.ui-state-hover, .ui-state-active {
font-weight: 700;
}
#appimage {
img {
max-width: 150px;
}
}

4
resources/views/items/form.blade.php

@ -28,10 +28,12 @@
<div class="input">
<label>Icon</label>
<div id="appimage">
@if(isset($item->icon) && !empty($item->icon))
<a href="{{ asset('storage/'.$item->icon) }}">View current icon</a>
<img src="{{ asset('storage/'.$item->icon) }}" />
{!! Form::hidden('icon', $item->icon, ['class' => 'form-control']) !!}
@endif
</div>
<input name="file" type="file" class="form-control">
</div>

5
resources/views/items/scripts.blade.php

@ -12,8 +12,9 @@
source: availableTags,
select: function( event, ui ) {
$.post('/appload', { app: ui.item.value }, function(data) {
alert(data);
});
$('#appimage').html("<img src='/storage/"+data.icon+"' /><input type='hidden' name='icon' value='"+data.icon+"' />");
$('input[name=colour]').val(data.colour);
}, "json");
}
});
});

Loading…
Cancel
Save