mirror of
https://github.com/Poniverse/Pony.fm.git
synced 2024-11-25 14:37:59 +01:00
Started on show songs
This commit is contained in:
parent
3b291f3b8f
commit
c3744e2931
12 changed files with 2088 additions and 14 deletions
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
use Entities\Genre;
|
use Entities\Genre;
|
||||||
use Entities\License;
|
use Entities\License;
|
||||||
|
use Entities\ShowSong;
|
||||||
use Entities\TrackType;
|
use Entities\TrackType;
|
||||||
|
|
||||||
class TaxonomiesController extends \ApiControllerBase {
|
class TaxonomiesController extends \ApiControllerBase {
|
||||||
|
@ -11,7 +12,8 @@
|
||||||
return \Response::json([
|
return \Response::json([
|
||||||
'licenses' => License::all()->toArray(),
|
'licenses' => License::all()->toArray(),
|
||||||
'genres' => Genre::orderBy('name')->get()->toArray(),
|
'genres' => Genre::orderBy('name')->get()->toArray(),
|
||||||
'track_types' => TrackType::all()->toArray()
|
'track_types' => TrackType::all()->toArray(),
|
||||||
|
'show_songs' => ShowSong::select('title', 'id', 'slug')->get()->toArray()
|
||||||
], 200);
|
], 200);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
class ImagesController extends Controller {
|
class ImagesController extends Controller {
|
||||||
public function getImage($id, $type) {
|
public function getImage($id, $type) {
|
||||||
$coverType = Image::GetImageTypeFromName($type);
|
$coverType = Image::getImageTypeFromName($type);
|
||||||
|
|
||||||
if ($coverType == null)
|
if ($coverType == null)
|
||||||
App::abort(404);
|
App::abort(404);
|
||||||
|
|
2050
app/database/migrations/2013_07_28_034328_create_songs_table.php
Normal file
2050
app/database/migrations/2013_07_28_034328_create_songs_table.php
Normal file
File diff suppressed because it is too large
Load diff
|
@ -70,7 +70,7 @@
|
||||||
}
|
}
|
||||||
else if (isset($this->_input['cover'])) {
|
else if (isset($this->_input['cover'])) {
|
||||||
$cover = $this->_input['cover'];
|
$cover = $this->_input['cover'];
|
||||||
$track->cover_id = Image::Upload($cover, Auth::user())->id;
|
$track->cover_id = Image::upload($cover, Auth::user())->id;
|
||||||
} else if ($this->_input['remove_cover'] == 'true')
|
} else if ($this->_input['remove_cover'] == 'true')
|
||||||
$track->cover_id = null;
|
$track->cover_id = null;
|
||||||
|
|
||||||
|
|
|
@ -15,11 +15,11 @@
|
||||||
public static $ImageTypes = [
|
public static $ImageTypes = [
|
||||||
self::NORMAL => ['id' => self::NORMAL, 'name' => 'normal', 'width' => 350, 'height' => 350],
|
self::NORMAL => ['id' => self::NORMAL, 'name' => 'normal', 'width' => 350, 'height' => 350],
|
||||||
self::ORIGINAL => ['id' => self::ORIGINAL, 'name' => 'original', 'width' => null, 'height' => null],
|
self::ORIGINAL => ['id' => self::ORIGINAL, 'name' => 'original', 'width' => null, 'height' => null],
|
||||||
self::SMALL => ['id' => self::SMALL, 'name' => 'small', 'width' => 100, 'height' => 100],
|
self::SMALL => ['id' => self::SMALL, 'name' => 'small', 'width' => 100, 'height' => 100],
|
||||||
self::THUMBNAIL => ['id' => self::THUMBNAIL, 'name' => 'thumbnail', 'width' => 50, 'height' => 50]
|
self::THUMBNAIL => ['id' => self::THUMBNAIL, 'name' => 'thumbnail', 'width' => 50, 'height' => 50]
|
||||||
];
|
];
|
||||||
|
|
||||||
public static function GetImageTypeFromName($name) {
|
public static function getImageTypeFromName($name) {
|
||||||
foreach (self::$ImageTypes as $cover) {
|
foreach (self::$ImageTypes as $cover) {
|
||||||
if ($cover['name'] != $name)
|
if ($cover['name'] != $name)
|
||||||
continue;
|
continue;
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function Upload($file, $user) {
|
public static function upload($file, $user) {
|
||||||
$hash = md5_file($file->getPathname());
|
$hash = md5_file($file->getPathname());
|
||||||
$image = Image::whereHash($hash)->whereUploadedBy($user->id)->first();
|
$image = Image::whereHash($hash)->whereUploadedBy($user->id)->first();
|
||||||
|
|
||||||
|
|
7
app/models/Entities/ShowSong.php
Normal file
7
app/models/Entities/ShowSong.php
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Entities;
|
||||||
|
|
||||||
|
class ShowSong extends \Eloquent {
|
||||||
|
protected $table = 'show_songs';
|
||||||
|
}
|
|
@ -23,11 +23,18 @@ angular.module('ponyfm').directive 'pfmPopup', () ->
|
||||||
$popup.removeClass 'open'
|
$popup.removeClass 'open'
|
||||||
return
|
return
|
||||||
|
|
||||||
position = $element.offset()
|
|
||||||
$popup.addClass 'open'
|
$popup.addClass 'open'
|
||||||
|
|
||||||
|
position = $element.offset()
|
||||||
|
left = position.left
|
||||||
|
right = left + $popup.width()
|
||||||
|
windowWidth = $(window).width() - 15
|
||||||
|
if right > windowWidth
|
||||||
|
left -= right - windowWidth
|
||||||
|
|
||||||
$popup.css
|
$popup.css
|
||||||
top: position.top + $element.height() + 10
|
top: position.top + $element.height() + 10
|
||||||
left: position.left
|
left: left
|
||||||
|
|
||||||
open = true
|
open = true
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,10 @@ angular.module('ponyfm').factory('taxonomies', [
|
||||||
def = null
|
def = null
|
||||||
|
|
||||||
self =
|
self =
|
||||||
trackTypes: [],
|
trackTypes: []
|
||||||
licenses: []
|
licenses: []
|
||||||
genres: []
|
genres: []
|
||||||
|
showSongs: []
|
||||||
refresh: () ->
|
refresh: () ->
|
||||||
return def if def != null
|
return def if def != null
|
||||||
|
|
||||||
|
@ -16,6 +17,7 @@ angular.module('ponyfm').factory('taxonomies', [
|
||||||
self.trackTypes.push t for t in taxonomies.track_types
|
self.trackTypes.push t for t in taxonomies.track_types
|
||||||
self.licenses.push t for t in taxonomies.licenses
|
self.licenses.push t for t in taxonomies.licenses
|
||||||
self.genres.push t for t in taxonomies.genres
|
self.genres.push t for t in taxonomies.genres
|
||||||
|
self.showSongs.push t for t in taxonomies.show_songs
|
||||||
def.resolve self
|
def.resolve self
|
||||||
def
|
def
|
||||||
|
|
||||||
|
|
|
@ -104,6 +104,9 @@
|
||||||
</select>
|
</select>
|
||||||
<div class="error">{{errors.genre_id}}</div>
|
<div class="error">{{errors.genre_id}}</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-row" ng-show="edit.track_type_id == 2">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<div class="form-row span6" ng-class="{'has-error': errors.cover != null}">
|
<div class="form-row span6" ng-class="{'has-error': errors.cover != null}">
|
||||||
|
|
2
vendor/autoload.php
vendored
2
vendor/autoload.php
vendored
|
@ -4,4 +4,4 @@
|
||||||
|
|
||||||
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
||||||
|
|
||||||
return ComposerAutoloaderInit3b14f774048abcb51cb73f0018822c49::getLoader();
|
return ComposerAutoloaderInita1fb7abacafe9eba7b46e2d4ded6e3a5::getLoader();
|
||||||
|
|
5
vendor/composer/autoload_classmap.php
vendored
5
vendor/composer/autoload_classmap.php
vendored
|
@ -11,6 +11,7 @@ return array(
|
||||||
'AlbumsController' => $baseDir . '/app/controllers/AlbumsController.php',
|
'AlbumsController' => $baseDir . '/app/controllers/AlbumsController.php',
|
||||||
'ApiControllerBase' => $baseDir . '/app/controllers/ApiControllerBase.php',
|
'ApiControllerBase' => $baseDir . '/app/controllers/ApiControllerBase.php',
|
||||||
'Api\\Web\\AuthController' => $baseDir . '/app/controllers/Api/Web/AuthController.php',
|
'Api\\Web\\AuthController' => $baseDir . '/app/controllers/Api/Web/AuthController.php',
|
||||||
|
'Api\\Web\\ImagesController' => $baseDir . '/app/controllers/Api/Web/ImagesController.php',
|
||||||
'Api\\Web\\TaxonomiesController' => $baseDir . '/app/controllers/Api/Web/TaxonomiesController.php',
|
'Api\\Web\\TaxonomiesController' => $baseDir . '/app/controllers/Api/Web/TaxonomiesController.php',
|
||||||
'Api\\Web\\TracksController' => $baseDir . '/app/controllers/Api/Web/TracksController.php',
|
'Api\\Web\\TracksController' => $baseDir . '/app/controllers/Api/Web/TracksController.php',
|
||||||
'ArtistsController' => $baseDir . '/app/controllers/ArtistsController.php',
|
'ArtistsController' => $baseDir . '/app/controllers/ArtistsController.php',
|
||||||
|
@ -129,8 +130,8 @@ return array(
|
||||||
'Commands\\EditTrackCommand' => $baseDir . '/app/models/Commands/EditTrackCommand.php',
|
'Commands\\EditTrackCommand' => $baseDir . '/app/models/Commands/EditTrackCommand.php',
|
||||||
'Commands\\UploadTrackCommand' => $baseDir . '/app/models/Commands/UploadTrackCommand.php',
|
'Commands\\UploadTrackCommand' => $baseDir . '/app/models/Commands/UploadTrackCommand.php',
|
||||||
'ContentController' => $baseDir . '/app/controllers/ContentController.php',
|
'ContentController' => $baseDir . '/app/controllers/ContentController.php',
|
||||||
'Cover' => $baseDir . '/app/models/Cover.php',
|
|
||||||
'CreateImagesTable' => $baseDir . '/app/database/migrations/2013_07_26_230827_create_images_table.php',
|
'CreateImagesTable' => $baseDir . '/app/database/migrations/2013_07_26_230827_create_images_table.php',
|
||||||
|
'CreateSongsTable' => $baseDir . '/app/database/migrations/2013_07_28_034328_create_songs_table.php',
|
||||||
'CreateTracksTable' => $baseDir . '/app/database/migrations/2013_06_27_015259_create_tracks_table.php',
|
'CreateTracksTable' => $baseDir . '/app/database/migrations/2013_06_27_015259_create_tracks_table.php',
|
||||||
'CreateUsersTable' => $baseDir . '/app/database/migrations/2013_06_07_003952_create_users_table.php',
|
'CreateUsersTable' => $baseDir . '/app/database/migrations/2013_06_07_003952_create_users_table.php',
|
||||||
'DatabaseSeeder' => $baseDir . '/app/database/seeds/DatabaseSeeder.php',
|
'DatabaseSeeder' => $baseDir . '/app/database/seeds/DatabaseSeeder.php',
|
||||||
|
@ -400,6 +401,7 @@ return array(
|
||||||
'Doctrine\\DBAL\\Types\\VarDateTimeType' => $vendorDir . '/doctrine/dbal/lib/Doctrine/DBAL/Types/VarDateTimeType.php',
|
'Doctrine\\DBAL\\Types\\VarDateTimeType' => $vendorDir . '/doctrine/dbal/lib/Doctrine/DBAL/Types/VarDateTimeType.php',
|
||||||
'Doctrine\\DBAL\\Version' => $vendorDir . '/doctrine/dbal/lib/Doctrine/DBAL/Version.php',
|
'Doctrine\\DBAL\\Version' => $vendorDir . '/doctrine/dbal/lib/Doctrine/DBAL/Version.php',
|
||||||
'Entities\\Genre' => $baseDir . '/app/models/Entities/Genre.php',
|
'Entities\\Genre' => $baseDir . '/app/models/Entities/Genre.php',
|
||||||
|
'Entities\\Image' => $baseDir . '/app/models/Entities/Image.php',
|
||||||
'Entities\\License' => $baseDir . '/app/models/Entities/License.php',
|
'Entities\\License' => $baseDir . '/app/models/Entities/License.php',
|
||||||
'Entities\\Track' => $baseDir . '/app/models/Entities/Track.php',
|
'Entities\\Track' => $baseDir . '/app/models/Entities/Track.php',
|
||||||
'Entities\\TrackType' => $baseDir . '/app/models/Entities/TrackType.php',
|
'Entities\\TrackType' => $baseDir . '/app/models/Entities/TrackType.php',
|
||||||
|
@ -793,6 +795,7 @@ return array(
|
||||||
'Illuminate\\Workbench\\PackageCreator' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/PackageCreator.php',
|
'Illuminate\\Workbench\\PackageCreator' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/PackageCreator.php',
|
||||||
'Illuminate\\Workbench\\Starter' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/Starter.php',
|
'Illuminate\\Workbench\\Starter' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/Starter.php',
|
||||||
'Illuminate\\Workbench\\WorkbenchServiceProvider' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/WorkbenchServiceProvider.php',
|
'Illuminate\\Workbench\\WorkbenchServiceProvider' => $vendorDir . '/laravel/framework/src/Illuminate/Workbench/WorkbenchServiceProvider.php',
|
||||||
|
'ImagesController' => $baseDir . '/app/controllers/ImagesController.php',
|
||||||
'Monolog\\Formatter\\ChromePHPFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php',
|
'Monolog\\Formatter\\ChromePHPFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php',
|
||||||
'Monolog\\Formatter\\FormatterInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php',
|
'Monolog\\Formatter\\FormatterInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php',
|
||||||
'Monolog\\Formatter\\GelfMessageFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php',
|
'Monolog\\Formatter\\GelfMessageFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php',
|
||||||
|
|
6
vendor/composer/autoload_real.php
vendored
6
vendor/composer/autoload_real.php
vendored
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
// autoload_real.php generated by Composer
|
// autoload_real.php generated by Composer
|
||||||
|
|
||||||
class ComposerAutoloaderInit3b14f774048abcb51cb73f0018822c49
|
class ComposerAutoloaderInita1fb7abacafe9eba7b46e2d4ded6e3a5
|
||||||
{
|
{
|
||||||
private static $loader;
|
private static $loader;
|
||||||
|
|
||||||
|
@ -19,9 +19,9 @@ class ComposerAutoloaderInit3b14f774048abcb51cb73f0018822c49
|
||||||
return self::$loader;
|
return self::$loader;
|
||||||
}
|
}
|
||||||
|
|
||||||
spl_autoload_register(array('ComposerAutoloaderInit3b14f774048abcb51cb73f0018822c49', 'loadClassLoader'), true, true);
|
spl_autoload_register(array('ComposerAutoloaderInita1fb7abacafe9eba7b46e2d4ded6e3a5', 'loadClassLoader'), true, true);
|
||||||
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
||||||
spl_autoload_unregister(array('ComposerAutoloaderInit3b14f774048abcb51cb73f0018822c49', 'loadClassLoader'));
|
spl_autoload_unregister(array('ComposerAutoloaderInita1fb7abacafe9eba7b46e2d4ded6e3a5', 'loadClassLoader'));
|
||||||
|
|
||||||
$vendorDir = dirname(__DIR__);
|
$vendorDir = dirname(__DIR__);
|
||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
Loading…
Reference in a new issue