Ejemplo n.º 1
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Cd();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Cd'])) {
         $model->attributes = $_POST['Cd'];
         if ($model->save()) {
             $this->redirect(array('view', 'id' => $model->id));
         }
     }
     $this->render('create', array('model' => $model));
 }
Ejemplo n.º 2
0
 public function postAddCd()
 {
     $cd = new Cd();
     $cd->title = Input::get('title');
     $cd->artist = Input::get('artist');
     $cd->genre = Input::get('genre');
     $cd->year = Input::get('year');
     $cd->user_id = Auth::user()->id;
     # Try to add the user
     try {
         $cd->save();
     } catch (Exception $e) {
         return Redirect::to('/add-cd')->with('flash_message', 'New cd failed to create; please try again.')->withInput();
     }
     return Redirect::to('/browse-cds')->with('flash_message', 'New cd created successfully!');
 }
Ejemplo n.º 3
0
 /**
  * Creates or updates the track in database getting data from file.
  * Used in /album/actions/executeRefreshAlbum
  *
  * @param Cd $cd_object ex: CD(Cd 1)
  * @param Array $track_info[] ex: [3, Beat it, MICHAEL JACKSON, 4:32, 128 kbps, 3,4 MB]
  * @return Track
  */
 public static function createTrack($cd_object, $track_info)
 {
     //looking for this episode in db
     $track_object = NULL;
     foreach ($cd_object['Tracks'] as $track) {
         if ($track->title == $track_info['title']) {
             $track_object = $track;
         }
     }
     //if there is no episode
     if ($track_object == NULL) {
         $track_object = new Track();
         $track_object->title = $track_info['title'];
     }
     $track_object->num_track = $track_info['num_track'];
     $track_object->duration = $track_info['duration'];
     $track_object->bitrate = $track_info['bitrate'];
     $track_object->filesize = $track_info['filesize'];
     $track_object->rating = $track_info['rating'];
     $track_object->lyrics = $track_info['lyrics'];
     $track_object->file_rel = $track_info['file_rel'];
     /*********************************   YEAR   *********************************/
     if ($track_info['year'] == "") {
         $track_object->Year = NULL;
     } else {
         $year_object = Doctrine::getTable('Year')->findOneByName($track_info['year']);
         if ($year_object == NULL) {
             $year_object = Util::createYear($track_info['year']);
         }
         $track_object->Year = $year_object;
     }
     /*********************************   GENRE   *********************************/
     if ($track_info['genre'] == "") {
         $track_object->Genre = NULL;
     } else {
         $genre_object = Doctrine::getTable('Genre')->findOneByName($track_info['genre']);
         if ($genre_object == NULL) {
             $genre_object = Util::createGenre($track_info['genre']);
         }
         $track_object->Genre = $genre_object;
     }
     /*********************************   SINGER   *********************************/
     if ($track_info['artist'] == "") {
         $track_object->Singer = NULL;
     } else {
         $singer_object = Doctrine::getTable('Singer')->findOneByName(Util::formatName($track_info['artist']));
         if ($singer_object == NULL) {
             $singer_object = Util::createSinger(Util::formatName($track_info['artist']));
         }
         $track_object->Singer = $singer_object;
     }
     $track_object->save();
     $cd_object->Tracks[] = $track_object;
     $cd_object->save();
     return $track_object;
 }
Ejemplo n.º 4
0
<?php

require_once __DIR__ . "/../vendor/autoload.php";
require_once __DIR__ . "/../src/Cd.php";
session_start();
$cds = array();
if (empty($_SESSION['list_of_cds'])) {
    $_SESSION['list_of_cds'] = $cds;
}
$app = new Silex\Application();
$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => __DIR__ . '/../views'));
//ROOT ROUTE
$app->get("/", function () use($app) {
    return $app['twig']->render('cd.html.twig', array('cds' => Cd::getAll()));
});
$app->get('/new_cd', function () use($app) {
    return $app['twig']->render('new_cd.html.twig', array('cds' => Cd::getAll()));
});
$app->get('/searchbyartist', function () use($app) {
    return $app['twig']->render('searchbyartist.html.twig', array('cds' => Cd::getAll()));
});
$app->post('/cd_confirm', function () use($app) {
    $cd = new Cd($_POST['artist'], $_POST['title'], $_POST['price']);
    $cd->save();
    return $app['twig']->render('cd_confirm.html.twig', array('newcd' => $cd));
});
return $app;
Ejemplo n.º 5
0
require_once __DIR__ . '/../src/Cd.php';
session_start();
if (empty($_SESSION['list_of_cds'])) {
    $_SESSION['list_of_cds'] = array();
}
$app = new Silex\Application();
$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => __DIR__ . '/../views'));
$app->get('/', function () use($app) {
    return $app['twig']->render('cd_organizer.html.twig', array('cds' => Cd::getAll()));
});
$app->get('/new_cd', function () use($app) {
    return $app['twig']->render('create_cd.html.twig');
});
$app->post('/create_cd', function () use($app) {
    $album = new Cd($_POST['newCd'], $_POST['newArtist']);
    $album->save();
    return $app['twig']->render('new_cd.html.twig', array('newcd' => $album));
});
$app->get('/delete_cds', function () use($app) {
    Cd::deleteAll();
    return $app['twig']->render('delete_cds.html.twig');
});
$app->get('/search_by_artist', function () use($app) {
    return $app['twig']->render('search_by_artist.html.twig');
});
$app->post('/results', function () use($app) {
    $results = array();
    $searched_artist = strtolower($_POST['artistSearch']);
    foreach ($_SESSION['list_of_cds'] as $cd) {
        if (strtolower($cd->getArtist()) == $searched_artist) {
            array_push($results, $cd);