Beispiel #1
0
 public function addAction(Request $request)
 {
     // Checking authentication parameter
     $transmission_authentication = $this->container->getParameter('transmission_authentication');
     // Get download and  temporary path
     $transmission_dir = $this->container->getParameter('transmission_dir');
     $transmission_tmp = $this->container->getParameter('transmission_tmp');
     // Checking if transmission authentication is enabled
     if ($transmission_authentication == true) {
         $this->username = $this->container->getParameter('transmission_username');
         $this->password = $this->container->getParameter('transmission_password');
         // Initialize Client
         if (!isset($client)) {
             $client = new Client();
             $client->authenticate($this->username, $this->password);
         }
     }
     // Initialize Transmission Connector
     $transmission = new Transmission();
     $transmission->setClient($client);
     // Configuring many var of transmission and save as session
     $session = $transmission->getSession();
     $session->setDownloadDir($transmission_dir);
     $session->setIncompleteDir($transmission_tmp);
     $session->setIncompleteDirEnabled(true);
     $session->save();
     // If form is call
     if ($request->isMethod('POST')) {
         // Get torrent 'uri'
         $uri = $request->request->get('addtorrent_uri');
         // Add new torrent with form 'uri' submitted
         $transmission->add($uri);
     }
     // Return flashbag info_box
     $session = $request->getSession();
     $session->getFlashBag()->add('info', 'Fichier ajouté avec succès !');
     // Return redirect uri to the core controller
     return $this->redirect($this->generateUrl('app_feather_core'));
 }