Esempio n. 1
0
 public static function excluir($idMultimidia)
 {
     $multimidia = Multimidia::findOrFail($idMultimidia);
     $tipoMidia = TipoMidia::findOrFail(Midia::find($multimidia->id_midia)->id_tipo_midia);
     Multimidia::excluirThumb($tipoMidia->descricao, $multimidia->imagem);
     unlink('uploads/' . $tipoMidia->descricao . '/' . $multimidia->imagem);
     Multimidia::destroy($idMultimidia);
 }
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getMultimidias()
 {
     return $this->hasMany(Multimidia::className(), ['id_audiencia' => 'id']);
 }
Esempio n. 3
0
 public static function uploadMultiplo($tipo_midia, $idRegistro, $dados = null)
 {
     if (!is_null($dados)) {
         $dados = (object) $dados;
     }
     $file = Request::file('imagens');
     $nomeTipo = TipoMidia::findOrFail($tipo_midia)->descricao;
     $midia = Midia::where('id_registro_tabela', $idRegistro)->where('id_tipo_midia', $tipo_midia)->first();
     if (!empty($midia)) {
         foreach ($file as $img) {
             $nomeOriginal = $img->getClientOriginalName();
             // PEGANDO O NOME ORIGINAL DO ARQUIVO A SER UPADO
             $novoNome = md5(uniqid($nomeOriginal)) . '.' . $img->getClientOriginalExtension();
             // MONTANDO O NOVO NOME COM MD5 + IDUNICO BASEADO NO NOME ORIGINAL E CONCATENANDO COM A EXTENÇÃO DO ARQUIVO
             $img->move('uploads/' . $nomeTipo, $novoNome);
             // MOVENDO O ARQUIVO PARA A PASTA UPLOADS/"TIPO DA MIDIA"
             $multi = new Multimidia();
             // GRAVANDO NA TABELA MULTIMIDIA
             $multi->id_midia = $midia->id_midia;
             $multi->imagem = $novoNome;
             if (!empty($dados)) {
                 $multi->ordem = $dados->multimicia_ordem;
                 $multi->video = $dados->multimicia_video;
             }
             $multi->save();
         }
     } else {
         // gravando dados na tabela midia
         $midia = new Midia();
         $midia->id_tipo_midia = $tipo_midia;
         $midia->id_registro_tabela = $idRegistro;
         $midia->descricao = $nomeTipo . ' criado automaticamente';
         if (!empty($dados)) {
             $midia->ordem = $dados->midia_ordem;
         }
         $midia->save();
         foreach ($file as $img) {
             $nomeOriginal = $img->getClientOriginalName();
             // PEGANDO O NOME ORIGINAL DO ARQUIVO A SER UPADO
             $novoNome = md5(uniqid($nomeOriginal)) . '.' . $img->getClientOriginalExtension();
             // MONTANDO O NOVO NOME COM MD5 + IDUNICO BASEADO NO NOME ORIGINAL E CONCATENANDO COM A EXTENÇÃO DO ARQUIVO
             $img->move('uploads/' . $nomeTipo, $novoNome);
             // MOVENDO O ARQUIVO PARA A PASTA UPLOADS/"TIPO DA MIDIA"
             $multi = new Multimidia();
             // GRAVANDO NA TABELA MULTIMIDIA
             $multi->id_midia = $midia->id_midia;
             $multi->imagem = $novoNome;
             if (!empty($dados)) {
                 $multi->ordem = $dados->multimicia_ordem;
                 $multi->video = $dados->multimicia_video;
             }
             $multi->save();
         }
     }
 }
 public function actionUpload()
 {
     $model = new UploadForm();
     if (Yii::$app->request->isPost) {
         $parametros = Yii::$app->request->post();
         if ($audiencia = Audiencia::findOne($parametros['idAudiencia'])) {
             if (!is_dir(Yii::getAlias('@upload') . '/' . $audiencia->id)) {
                 mkdir(Yii::getAlias('@upload') . '/' . $audiencia->id, 0777);
             }
             $nomeArquivo = md5(microtime(true));
             $caminhoCompleto = Yii::getAlias('@upload') . '/' . $audiencia->id . '/' . $nomeArquivo;
             $model->audio = UploadedFile::getInstanceByName('audio');
             $model->video = UploadedFile::getInstanceByName('video');
             $model->audio->saveAs($caminhoCompleto . '.wav');
             $model->video->saveAs($caminhoCompleto . '.webm');
             //Tranformo o arquivo em um WEBM com audio
             $cmd = ' -i ' . $caminhoCompleto . '.wav' . ' -i ' . $caminhoCompleto . '.webm' . ' -vcodec copy ' . $caminhoCompleto . '-m.webm';
             exec(Yii::getAlias('@ffmpeg') . ' ' . $cmd . ' 2>&1', $out, $ret);
             $arquivoVideo = new Multimidia();
             $arquivoVideo->dsc_arquivo = $nomeArquivo . '-m.webm';
             $arquivoVideo->id_audiencia = $parametros['idAudiencia'];
             $arquivoVideo->dsc_caminho_completo = $caminhoCompleto . '-m.webm';
             $arquivoVideo->save();
             $filaEnvio = new FilaEnvio();
             $filaEnvio->id_registro = $arquivoVideo->id;
             $filaEnvio->tabela = $arquivoVideo->tableName();
             $filaEnvio->save();
             //Efetuo a exclusao dos demais arquivos separados
             unlink($caminhoCompleto . '.wav');
             unlink($caminhoCompleto . '.webm');
         }
     }
 }
Esempio n. 5
0
 public function destroyFoto(Request $request)
 {
     Multimidia::excluir($request->id);
     session()->flash('flash_message', 'Registro apagado com sucesso');
 }