mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-10 23:31:06 +03:30
83 lines
2.4 KiB
PHP
83 lines
2.4 KiB
PHP
<?php
|
|
|
|
namespace App\Services\Media;
|
|
|
|
use App\Models\FakeModel;
|
|
|
|
class MediaHelper
|
|
{
|
|
public static function moveMediaTo( $model )
|
|
{
|
|
request()->validate( [
|
|
'file_batch_id' => 'nullable' ,
|
|
] );
|
|
|
|
if ( $fakeModel = FakeModel::where( 'batch_id' , request( 'file_batch_id' ) )->first() ) {
|
|
foreach ( $fakeModel->getMedia( 'temp_medias' ) as $media ) {
|
|
$media->move( $model , 'files' );
|
|
}
|
|
$fakeModel->delete();
|
|
}
|
|
}
|
|
|
|
// public static function storeMediaFor( Model $model , string $batchId = null )
|
|
// {
|
|
// if ( is_null( $batchId ) ) {
|
|
// $batchId = request()->input( 'file_batch_id' );
|
|
// }
|
|
//
|
|
// $modelName = self::getNamespaceMap( $model );
|
|
//
|
|
// if ( $fakeModel = FakeModel::where( 'batch_id' , $batchId )->where( 'model_name' , $modelName )->first() ) {
|
|
//
|
|
// foreach ( $fakeModel->media()->get() as $media ) {
|
|
// $media->move( $model , $media->collection_name );
|
|
// }
|
|
//
|
|
// $fakeModel->delete();
|
|
//
|
|
// }
|
|
//
|
|
// }
|
|
//
|
|
// private static function getNamespaceMap( Model $model )
|
|
// {
|
|
// return $model->getMorphClass();
|
|
// }
|
|
//
|
|
// public static function moveTinyMCEMediaTo( $model )
|
|
// {
|
|
//
|
|
// request()->validate( [
|
|
// 'tinymce_batch_id' => 'nullable|string' ,
|
|
// ] );
|
|
//
|
|
// if ( $fakeModel = FakeModel::where( 'batch_id' , request( 'tinymce_batch_id' ) )->first() ) {
|
|
// foreach ( $fakeModel->getMedia( 'temp_medias' ) as $media ) {
|
|
// if ( substr( $media->mime_type , 0 , 5 ) == 'image' ) {
|
|
// $media->assign( $model , 'tinymce_images' );
|
|
// } else {
|
|
// $media->assign( $model , 'temp_medias' );
|
|
// }
|
|
// }
|
|
// $fakeModel->delete();
|
|
// }
|
|
//
|
|
// }
|
|
//
|
|
// public static function loadMedia( $model , ...$collections )
|
|
// {
|
|
// $model->loadMissing( [ 'media' => function ( $query ) use ( $collections ) {
|
|
// $query->select( '*' );
|
|
// if ( ! empty( $collections ) ) {
|
|
// $query->whereIn( 'collection_name' , $collections );
|
|
// }
|
|
// } ] );
|
|
// if ( $model->media ) {
|
|
// foreach ( $model->media as $media ) {
|
|
// $media->address = $media->getUrl();
|
|
// }
|
|
// }
|
|
// }
|
|
}
|