some fix
This commit is contained in:
		@@ -12,10 +12,10 @@ class FileUpload
 | 
			
		||||
    public string $fileType;
 | 
			
		||||
    public array $fileNameCmps;
 | 
			
		||||
    public string $fileExtension;
 | 
			
		||||
    public string $newFileName;
 | 
			
		||||
    public array $allowedFileExtensions = ['jpg', 'gif', 'png'];
 | 
			
		||||
//    public string $newFileName;
 | 
			
		||||
    public array $allowedFileExtensions;
 | 
			
		||||
 | 
			
		||||
    public function __construct(array $file)
 | 
			
		||||
    public function __construct(array $file, array $extensions)
 | 
			
		||||
    {
 | 
			
		||||
        $this->fileTmpPath = $file['tmp_name'];
 | 
			
		||||
        $this->fileName = $file['name'];
 | 
			
		||||
@@ -23,28 +23,32 @@ class FileUpload
 | 
			
		||||
        $this->fileType = $file['type'];
 | 
			
		||||
        $this->fileNameCmps = explode('.', $this->fileName);
 | 
			
		||||
        $this->fileExtension = strtolower(end($this->fileNameCmps));
 | 
			
		||||
        $this->allowedFileExtensions = $extensions;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public function setNewFileName(): void
 | 
			
		||||
    {
 | 
			
		||||
        $this->newFileName = md5(time() . $this->fileName) . '.' . $this->fileExtension;
 | 
			
		||||
    }
 | 
			
		||||
//    public function setNewFileName(): void
 | 
			
		||||
//    {
 | 
			
		||||
//        $this->newFileName = md5(time() . $this->fileName) . '.' . $this->fileExtension;
 | 
			
		||||
//    }
 | 
			
		||||
 | 
			
		||||
    public function checkExtension(): void
 | 
			
		||||
    {
 | 
			
		||||
//    public function checkExtension(): bool
 | 
			
		||||
//    {
 | 
			
		||||
//        if (in_array($this->fileExtension, $this->allowedFileExtensions)) {
 | 
			
		||||
//            return true;
 | 
			
		||||
//        }
 | 
			
		||||
//        return false;
 | 
			
		||||
//    }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public function upload(): void
 | 
			
		||||
    public function upload()
 | 
			
		||||
    {
 | 
			
		||||
        $this->newFileName = md5(time() . $this->fileName) . '.' . $this->fileExtension;
 | 
			
		||||
        $newFileName = md5(time() . $this->fileName) . '.' . $this->fileExtension;
 | 
			
		||||
        if (in_array($this->fileExtension, $this->allowedFileExtensions)) {
 | 
			
		||||
            mkdir('./resources/upload/' . mb_substr($this->newFileName, 0, 2) . '/' . mb_substr($this->newFileName, 2, 2) . '/', 0777, true);
 | 
			
		||||
            $uploadFileDir = './resources/upload/' . mb_substr($this->newFileName, 0, 2) . '/' . mb_substr($this->newFileName, 2, 2) . '/';
 | 
			
		||||
            $dest_path = $uploadFileDir . $this->newFileName;
 | 
			
		||||
            mkdir('./resources/upload/' . mb_substr($newFileName, 0, 2) . '/' . mb_substr($newFileName, 2, 2) . '/', 0777, true);
 | 
			
		||||
            $uploadFileDir = './resources/upload/' . mb_substr($newFileName, 0, 2) . '/' . mb_substr($newFileName, 2, 2) . '/';
 | 
			
		||||
            $dest_path = $uploadFileDir . $newFileName;
 | 
			
		||||
            move_uploaded_file($this->fileTmpPath, $dest_path);
 | 
			
		||||
        } else {
 | 
			
		||||
            echo "Ниченр не получилочь :(";
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -34,7 +34,7 @@ class MenuController extends AdminController
 | 
			
		||||
    #[NoReturn] public function actionAdd(): void
 | 
			
		||||
    {
 | 
			
		||||
        if (isset($_FILES['icon_file']) && $_FILES['icon_file']['error'] === UPLOAD_ERR_OK) {
 | 
			
		||||
            $file = new FileUpload($_FILES['icon_file']);
 | 
			
		||||
            $file = new FileUpload($_FILES['icon_file'], ['jpg', 'jpeg', 'png']);
 | 
			
		||||
            $file->upload();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -97,7 +97,7 @@ class MenuController extends AdminController
 | 
			
		||||
            throw new Exception(message: "The menu item not found");
 | 
			
		||||
        }
 | 
			
		||||
        if (isset($_FILES['icon_file']) && $_FILES['icon_file']['error'] === UPLOAD_ERR_OK) {
 | 
			
		||||
            $file = new FileUpload($_FILES['icon_file']);
 | 
			
		||||
            $file = new FileUpload($_FILES['icon_file'], ['jpg', 'jpeg', 'png']);
 | 
			
		||||
            $file->upload();
 | 
			
		||||
        }
 | 
			
		||||
        $menuForm = new CreateMenuForm();
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@
 | 
			
		||||
use kernel\models\Menu;
 | 
			
		||||
 | 
			
		||||
$form = new \itguild\forms\ActiveForm();
 | 
			
		||||
$form->beginForm(isset($model) ? "/admin/settings/menu/edit/" . $model->id : "/admin/settings/menu");
 | 
			
		||||
$form->beginForm(isset($model) ? "/admin/settings/menu/edit/" . $model->id : "/admin/settings/menu", 'multipart/form-data');
 | 
			
		||||
 | 
			
		||||
$form->field(class: \itguild\forms\inputs\Select::class, name: "parent_id", params: [
 | 
			
		||||
    'class' => "form-control",
 | 
			
		||||
 
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 18 KiB  | 
| 
		 Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB  | 
		Reference in New Issue
	
	Block a user