Proyectos de Subversion LeadersLinked - Services

Rev

Rev 290 | Rev 333 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 290 Rev 302
Línea 665... Línea 665...
665
            $feed->status = Feed::STATUS_PUBLISHED;
665
            $feed->status = Feed::STATUS_PUBLISHED;
666
            $feed->total_comments    = 0;
666
            $feed->total_comments    = 0;
667
            $feed->total_shared     = 0;
667
            $feed->total_shared     = 0;
Línea 668... Línea 668...
668
 
668
 
669
 
669
 
Línea 670... Línea 670...
670
            $files = $this->getRequest()->getFiles()->toArray();
670
            $files      = $this->getRequest()->getFiles()->toArray();
671
            $file_type = '';
671
            $file_type  = '';
672
 
672
 
Línea 733... Línea 733...
733
                    }
733
                    }
734
                }
734
                }
Línea 735... Línea 735...
735
 
735
 
-
 
736
 
-
 
737
                $feed = $feedMapper->fetchOne($feed->id);
Línea 736... Línea -...
736
 
-
 
737
                $feed = $feedMapper->fetchOne($feed->id);
738
                
738
 
-
 
739
                if ($file_type == Feed::FILE_TYPE_DOCUMENT) {
739
                if($file_type) {
740
                    $target_path = $this->storage->getPathFeed();
740
 
741
                    
-
 
742
                    if ($this->storage->putFile($target_path, $feed->uuid, $feed_filename)) {
741
                    $target_path    = $target_path = $this->storage->getPathFeed();
743
                        $feed->file_type = $file_type;
742
                    $interal_path   = 'data' . DIRECTORY_SEPARATOR . 'storage' . DIRECTORY_SEPARATOR . 'tmp';
Línea 744... Línea -...
744
                        $feed->file_name = $feed_filename;
-
 
745
                        $feedMapper->update($feed);
-
 
746
                    }
-
 
747
                    
-
 
748
                } else if ($file_type == Feed::FILE_TYPE_IMAGE) {
-
 
749
                    $image = Image::getInstance($this->config);
-
 
750
                    $target_path = $image->getStorage()->getPathFeed();
-
 
751
 
-
 
752
                    list($target_width, $target_height) = explode('x', $this->config['leaderslinked.image_sizes.feed_image_size']);
-
 
753
 
-
 
754
               
-
 
755
                    $feed_filename = substr($feed_filename, 0, strrpos($feed_filename, '.'))  . '.png';
-
 
756
                    $crop_to_dimensions = false;
-
 
757
                    $unlink_source = true;
-
 
758
                    
-
 
759
                    if($image->uploadImageChangeSize($feed_tmp_filename, $target_path, $feed->uuid, $feed_filename, $target_width, $target_height, $crop_to_dimensions, $unlink_source)) {
-
 
760
                        $feed->file_type = $file_type;
-
 
761
                        $feed->file_name = $feed_filename;
743
                    if(!file_exists($interal_path)) {
762
                        $feedMapper->update($feed);
-
 
Línea 763... Línea 744...
763
                    }
744
                        mkdir($interal_path, 0775);
764
                }
745
                    }
765
                if ($file_type == Feed::FILE_TYPE_VIDEO) {
-
 
766
                    try {
-
 
767
                        
-
 
768
                        $full_filename = sys_get_temp_dir() . DIRECTORY_SEPARATOR . $feed_filename;
-
 
769
                        rename($feed_tmp_filename, $full_filename);
-
 
770
 
-
 
771
                        //extracción del cover
-
 
772
                        $generate_filename = substr($feed_filename, 0, strrpos($feed_filename, '.')).  '.jpg';
-
 
773
                        $generate_full_filename =  sys_get_temp_dir()  . DIRECTORY_SEPARATOR . $generate_filename; 
-
 
774
                 
-
 
775
                        
-
 
776
                        $cmd        = "/usr/bin/ffprobe -v error -of flat=s=_ -select_streams v:0 -show_entries stream=height,width,duration  $full_filename";
-
 
777
                        $response   = trim(shell_exec($cmd));
-
 
778
 
-
 
779
                        $source_duration = 0;
-
 
780
                        $lines = explode("\n", $response);
-
 
781
                        foreach ($lines as $line) {
-
 
782
                            $line = trim(strtolower($line));
-
 
783
                            if (strpos($line, 'duration') !== false) {
-
 
784
                                $values = explode('=', $line);
-
 
785
                                $source_duration = intval(str_replace($values[1], '#', ''), 10);
-
 
786
                            }
746
                    
787
                        }
-
 
788
 
747
                    if ($file_type == Feed::FILE_TYPE_DOCUMENT) {
789
 
-
 
790
                        if ($source_duration == 0) {
-
 
791
                            $second_extract = '00:00:02';
-
 
792
                        } else {
-
 
793
                            if ($source_duration > 10) {
748
                        
794
                                $second_extract = '00:00:10';
-
 
795
                            } else {
-
 
796
                                $second_extract = '00:00:02';
-
 
797
                            }
-
 
798
                        }
-
 
799
 
-
 
800
                        //$imageSize = $this->config['leaderslinked.image_sizes.feed_image_size'];
-
 
Línea -... Línea 749...
-
 
749
                        if ($this->storage->putFile($target_path, $feed->uuid, $feed_filename)) {
801
 
750
                            $feed->file_type = $file_type;
-
 
751
                            $feed->file_name = $feed_filename;
-
 
752
                            $feedMapper->update($feed);
-
 
753
                        }
-
 
754
                        
-
 
755
                    } else if ($file_type == Feed::FILE_TYPE_IMAGE) {
-
 
756
                        $image = Image::getInstance($this->config);
-
 
757
                      
Línea 802... Línea 758...
802
                        //$cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -deinterlace -an -ss $second_extract -f mjpeg -t 1 -r 1 -y -s $imageSize $generateFile";
758
                        list($target_width, $target_height) = explode('x', $this->config['leaderslinked.image_sizes.feed_image_size']);
803
                        // $cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -an -ss $second_extract -f mjpeg -t 1 -r 1 -y -s $imageSize $generateFile";
-
 
804
                        $cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -an -ss $second_extract -f mjpeg -t 1 -r 1 -y  $generate_full_filename";
-
 
805
                        exec($cmd);
759
    
806
                        
760
                   
807
                        $target_path = $this->storage->getPathFeed();
-
 
808
                        
761
                        $feed_filename      = substr($feed_filename, 0, strrpos($feed_filename, '.'))  . '.png';
809
                        if($this->storage->putFile($target_path, $feed->uuid, $generate_full_filename) || $this->storage->putFile($target_path, $feed->uuid, $full_filename)) {
-
 
810
 
-
 
811
 
-
 
812
                            $feed->file_type            = $file_type;
-
 
813
                            $feed->file_name            = $feed_filename;
-
 
814
                            $feed->file_image_preview   = $generate_filename;
-
 
815
                            $feedMapper->update($feed);
-
 
816
 
762
                        $crop_to_dimensions = false;
-
 
763
                        $unlink_source      = true;
-
 
764
                        
-
 
765
                        if($image->uploadImageChangeSize($feed_tmp_filename, $target_path, $feed->uuid, $feed_filename, $target_width, $target_height, $crop_to_dimensions, $unlink_source)) {
817
                            $videoConvert = new VideoConvert();
766
                            $feed->file_type = $file_type;
-
 
767
                            $feed->file_name = $feed_filename;
-
 
768
                            $feedMapper->update($feed);
-
 
769
                        }
-
 
770
                    }
-
 
771
                    if ($file_type == Feed::FILE_TYPE_VIDEO) {
-
 
772
                        try {
-
 
773
                            
-
 
774
                            
-
 
775
                            $full_filename          = $interal_path . DIRECTORY_SEPARATOR. $feed_filename;
-
 
776
                            $poster_filename        = substr($feed_filename, 0, strrpos($feed_filename, '.')).  '.jpg';
818
                            $videoConvert->filename = $full_filename;
777
                            $poster_full_filename   = $interal_path . DIRECTORY_SEPARATOR . $poster_filename;
-
 
778
                            
-
 
779
                            move_uploaded_file($feed_tmp_filename, $full_filename);
-
 
780
                            
-
 
781
                            $cmd        = "/usr/bin/ffprobe -v error -of flat=s=_ -select_streams v:0 -show_entries stream=height,width,duration  $full_filename";
-
 
782
                            $response   = trim(shell_exec($cmd));
-
 
783
                            
-
 
784
                            $source_duration = 0;
-
 
785
                            $lines = explode("\n", $response);
-
 
786
                            foreach ($lines as $line) {
-
 
787
                                $line = trim(strtolower($line));
819
                            $videoConvert->type = VideoConvert::TYPE_FEED;
788
                                if (strpos($line, 'duration') !== false) {
-
 
789
                                    $values = explode('=', $line);
-
 
790
                                    $source_duration = intval(str_replace($values[1], '#', ''), 10);
-
 
791
                                }
-
 
792
                            }
-
 
793
                            
-
 
794
                            
-
 
795
                            if ($source_duration == 0) {
-
 
796
                                $second_extract = '00:00:02';
-
 
797
                            } else {
-
 
798
                                if ($source_duration > 10) {
-
 
799
                                    $second_extract = '00:00:10';
-
 
800
                                } else {
-
 
801
                                    $second_extract = '00:00:02';
-
 
802
                                }
-
 
803
                            }
-
 
804
                            
-
 
805
                            //$imageSize = $this->config['leaderslinked.image_sizes.feed_image_size'];
-
 
806
                            
-
 
807
                            //$cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -deinterlace -an -ss $second_extract -f mjpeg -t 1 -r 1 -y -s $imageSize $generateFile";
-
 
808
                            // $cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -an -ss $second_extract -f mjpeg -t 1 -r 1 -y -s $imageSize $generateFile";
-
 
809
                            $cmd = "/usr/bin/ffmpeg -y -i $full_filename  -pix_fmt yuvj422p -an -ss $second_extract -f mjpeg -t 1 -r 1 -y  $poster_full_filename";
-
 
810
                            exec($cmd);
-
 
811
                            
-
 
812
                            
-
 
813
                            $ok = $this->storage->putFile($target_path, $feed->uuid, $poster_full_filename);
-
 
814
                            $ok = $ok && $this->storage->putFile($target_path, $feed->uuid, $full_filename);
Línea 820... Línea 815...
820
 
815
                            
-
 
816
                            if( $ok ) {
-
 
817
                                
-
 
818
                                $feed->file_type = $file_type;
-
 
819
                                $feed->file_name = basename($feed_filename);
-
 
820
                                $feed->file_image_preview = basename($poster_filename);;
-
 
821
                                
-
 
822
                    
-
 
823
                                
-
 
824
                                if($feedMapper->update($feed)) {
-
 
825
                                    
-
 
826
                                    $videoConvert               = new VideoConvert();
-
 
827
                                    $videoConvert->uuid         = $feed->uuid;
-
 
828
                                    $videoConvert->filename     = basename($feed_filename);
-
 
829
                                    $videoConvert->type         = VideoConvert::TYPE_FEED;
-
 
830
                                    
-
 
831
                                    $videoConvertMapper = VideoConvertMapper::getInstance($this->adapter);
821
                            $videoConvertMapper = VideoConvertMapper::getInstance($this->adapter);
832
                                    $videoConvertMapper->insert($videoConvert);
-
 
833
                                }
-
 
834
                            }
822
                            $videoConvertMapper->insert($videoConvert);
835
                            
823
                        }
836
                            // @unlink($full_filename);
824
                        
837
                            //@unlink($generate_full_filename);
Línea 825... Línea 838...
825
                        @unlink($full_filename);
838