X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Файловый менеджер — всё в одном файле
Den1xxx
Den1xxx
Topic Starter сообщение 25.11.2014, 10:17; Ответить: Den1xxx
Сообщение #1


Привет, народ.
В состав ReloadCMS входит простой и функциональный файловый менеджер.
После нескольких лет разработки в нём есть почти всё, что может понадобиться для прямого редактирования файлов на сервере.
Я подумал — а почему бы не портировать его отдельно, тем более можно сделать его всего в 1 файл?

Встречайте — файловый менеджер на PHP «всё в одном файле», версия пока unstable 0.01.

Что может:
1. Создавать, переименовывать и удалять файлы и папки, причём папки — рекурсивно.
2. Ходить внутри файловой системы, просто кликая на названии папок — как мы все привыкли.
3. Менять права.
4. Редактировать файлы (при клике на файл — переходим к редактированию).
5. Скачивать файлы из любой папки.
Как нетрудно догадаться, данным продуктом удобно пользоваться как шеллом.
На что ещё следует обратить внимание? В начало файла я вынес локализацию — перевод англ/рус
Если кому-то захочется добавить переводы на украинский, испанский и пр., велком.
Не получится с Гитхабом — отпишитесь в теме.

В оригинальной версии, встроенной в ЦМС, можно ещё:
1. Просматривать картинки.
В данной версии эта возможность отключена, т.к. пришлось бы подгружать сторонние библиотеки, скрипты и картинки для работы увеличителя картинок
2. При редактировании файла работает подсветка.
В отдельном файловом менеджере подсветка отключена, чтобы, опять же, не грузить сторонние скрипты.

Скриншот:
[attachment=40557:fm.png]
Ссылка на проект:
https://github.com/Den1xxx/Filemanager
Кому интересно — велком, подключайтесь.
Ссылка на релиз:
https://github.com/Den1xxx/Filemanager/archive/0.01.zip
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Degradator
Degradator
сообщение 25.11.2014, 10:43; Ответить: Degradator
Сообщение #2


если не будет лень, оберну функции в нормальный класс на этих выходных.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 2.12.2014, 6:14; Ответить: Arks
Сообщение #3


есть замечания:
1. Локализованные строки вынесены в тот же файл
2. для сравнения с int в функции get_rights_string используется if/else вместо switch
3. в строках 50-150 невменяемое количетсво конкатенаций и операндов, processor die какой-то! Вы же понимаете что опкешер сгладит погрешности но так писать код не стоит?
4. функция download_file сразу отправляет заголовки. Сурово. Не стоит ли буферизировать вывод?
5. функция rcms_scandir может быть даже не вызвана.. но она парсится!
Остальное.. тот поток сознания и html даже сложно комментировать, это какой-то треш. Для начала выделите html, перепишите на какой-нибудь другой шаблонный язык(лучше не связанный с php)

Иначе Вам или вашим пользователя в файлменеджер загрузят кактус или другую бячку.

Треш и угар. Стыдно такое выкладывать, разьве что как антиквариат без описания на память потомков.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 2.12.2014, 6:49; Ответить: Arks
Сообщение #4


честно говоря, я вообще плохо понимаю что такое filemanager на php. Видимо это для избранных. Я не против файл-менеджера, но только когда он виртуализирует ФС в рамках например файла(как INNODB), а не когда он "ломай меня полностью" и ходит по директориям.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 2.12.2014, 6:54; Ответить: Arks
Сообщение #5


Кстати почему в проекте в одной ветке master 2 коммита? От rebase / squash должны остаться хоть какие-то следы?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Den1xxx
Den1xxx
Topic Starter сообщение 2.12.2014, 8:01; Ответить: Den1xxx
Сообщение #6


(Arks @ 2.12.2014, 08:14) *
Треш и угар. Стыдно такое выкладывать, разьве что как антиквариат без описания на память потомков.

Вы правы, что код не причёсан.
Там в начале просто надергано функций из реального проекта, по принципу «абы заработало».
Выложил, т.к. возможно кому-то будет полезно как шелл на PHP, чтобы не писать самому.
Про треш и угар знаю, потому и написал
(Den1xxx @ 25.11.2014, 12:17) *
версия пока unstable 0.01.

Правда насчет отправки заголовков функцией download_file() Вы не правы.
Она создана чтобы отправить заголовки, закачиваемый файл и умереть — нафига там вывод буферизировать?
Посмотрите внимательней — внутри download_file() там die() в 2 местах.
(Arks @ 2.12.2014, 08:49) *
Я не против файл-менеджера, но только когда он виртуализирует ФС в рамках например файла(как INNODB), а не когда он "ломай меня полностью" и ходит по директориям.

Ну может он Вам просто не нужен вовсе — сервер стоит дома и вместо ФМ на PHP у Вас bash.
Например, как я его использую, правда как модуль внутри системы.
Приходишь к Заказчику и показываешь что написал и как работает.
И тут заметил какую-то досадную оплошность. Зашёл в ФМ — исправил за 1 минуту, подписал акт выполненных работ и отчалил.
Всё лучше, чем бежать домой, исправлять, и приходить в следующий раз.

//PS Может кому будет ещё интересно
Уже есть подобный проект — http://phpfm.sourceforge.net/
Проекту уже несколько лет, там есть и exec, и закачка/распаковка архивов и прочие вещи, в том числе локализация.
Что характерно, внутри треш ещё хуже чем у меня (например хидеры отправляют сразу первыми строками), потому проект мне откровенно не понравился. И размер файла больше в 8 раз, и авторизация — вообще нафиг не нужно. Если к моему нужно прикрутить админку — прикручивается в полпинка. В начале файла написать чтобы скрипт умирал если юзер не авторизован админом и всё!
Для моей ЦМС, например, достаточно написать:
[PHP]if (!$system->checkforright('FILES')) die('Bye');[/PHP]
Файловый менеджер не должен быть заменой ЦМС, это просто доп. удобный инструмент и всё.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Witu
Witu
сообщение 2.12.2014, 17:21; Ответить: Witu
Сообщение #7


http://sourceforge.net/projects/ajaxplorer/ и не нужно изобретать велосипед! как самостоятельный менеджер самое то.
Если уж из своего проекта выдергиваете, то хоть прикрутите что-то уникальное, например манипуляции с картинками (повороты, изменение размеров, обрезание) на стороне клиента...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Degradator
Degradator
сообщение 2.12.2014, 18:59; Ответить: Degradator
Сообщение #8


(Arks @ 2.12.2014, 08:14) *
Треш и угар

Да ладно, основные функции выполняет, работает шустро. Код простой, легко переделать - доделать под себя
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Degradator
Degradator
сообщение 2.12.2014, 18:59; Ответить: Degradator
Сообщение #9


(Den1xxx @ 2.12.2014, 10:01) *
Файловый менеджер не должен быть заменой ЦМС, это просто доп. удобный инструмент и всё.

да, именно так. Зашел в админку, открыл нужный файл, отредактировал, закрыл и забыл
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 8.12.2014, 6:43; Ответить: Arks
Сообщение #10


Den1xxx,
Хорошо, часть фраз Вы выбрали из контекста. Посмотрите на остальную.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Быстрый старт - Всё о накрутке пф за 7 минут
6 waterworld 2361 13.2.2024, 20:08
автор: Думающий
Открытая тема (нет новых ответов) Требуется контент-менеджер
1 Grimov 1160 8.2.2024, 9:54
автор: projectadmin
Открытая тема (нет новых ответов) Контент-менеджер в ссылочные биржи
3 Natalia22 1669 30.5.2023, 9:19
автор: Natalia22
Открытая тема (нет новых ответов) Требуется контент-менеджер для интернет-магазинов по игровой тематике
1 slavalist 894 27.3.2023, 1:51
автор: slavalist
Открытая тема (нет новых ответов) RedBox - все нужные инструменты в одном месте
0 fantomofdarkness 794 15.2.2023, 14:50
автор: fantomofdarkness


 



RSS Текстовая версия Сейчас: 19.4.2024, 15:34
Дизайн