Exemplo n.º 1
0
 /**
  * Modifie le nom du fichier en le minifiant. Ne pas donner l'extension.
  *
  * @param string $nouveauNom Nom nom (non minifié) du fichier
  * @param string $separateur Le séparateur remplaçant les caractères spéciaux
  * @param boolean $toutEnMinuscule VRAI ssi le nom doit être en minuscule
  * @param integer|NULL $longueurMaximale Longueur maximale du fichier (extension comprise)
  * @param boolean $remplaceSiExistant Si FAUX le nom du fichier pourra être modifié pour ne pas à avoir à remplacer un fichier existant
  * @return \Lyssal\Fichier Le fichier
  */
 public function setNomMinifie($nouveauNom, $separateur = '-', $toutEnMinuscule = true, $longueurMaximale = null, $remplaceSiExistant = false)
 {
     $chaineFichierNom = new Chaine($nouveauNom);
     $chaineFichierNom->minifie($separateur, $toutEnMinuscule);
     $fichierNom = $chaineFichierNom->getTexte();
     $longueurMaximaleSoustrait = strlen($this->getExtension()) + 1;
     // Réduire la longueur si le fichier existe déjà (à cause de l'ajout d'un suffixe)
     if ($remplaceSiExistant) {
         $longueurMaximaleSoustrait += strlen(self::getCheminLibre($this->getPath() . DIRECTORY_SEPARATOR . $fichierNom, $separateur)) - strlen($this->getPath() . DIRECTORY_SEPARATOR . $fichierNom);
     }
     if (null !== $longueurMaximale) {
         $fichierNom = substr($fichierNom, 0, $longueurMaximale - $longueurMaximaleSoustrait);
     }
     $fichierNom .= '.' . $this->getExtension();
     $this->move($this->getPath() . DIRECTORY_SEPARATOR . $fichierNom, $remplaceSiExistant);
     return $this;
 }
 public function update(Chaine $chaine)
 {
     $req = $this->_db->prepare("UPDATE radio SET `nom` = :nom, `flux` = :flux WHERE `id` = :id");
     $req->execute(array(':id' => $chaine->getId(), ':nom' => $chaine->getNom(), ':flux' => $chaine->getFlux()));
 }