FTP синхронизатор. Обязательно использование AJAX
Требуется PHP скрипт (не программа, а именно скрипт) для синхронизации файлов и папок между двумя FTP
Использовать MySQL
Обязательно использование AJAX для более прогрессивного интерфейса.
Исключить по возможности перезагрузки страниц. Операции удаления, редактирования и другие процессы выполнять "в фоне". По возможности.
Интерфейс.
Разделы.
1. Профиль. (Profile)
Тут редактируется логин ии пароль в систему. (логин - имейл)
Обязательна функция "Забыли пароль?"
Добавить функци "антибрут", блокировать при 5-ти направильных паролях.
2. Источники. (Sources)
Тут представлен список сайтов (ftp's) откуда будет производиться забор файлов и папок.
У каждого элемента списка есть возможность удалить, редактировать, копировать, инфо.
При редактировании открывается форма, куда вводим ip server (или домен), ftp логин и пароль.
После того как данные введены, нажимаем кнопочку "Сканировать". В этот момент скрипт заходит на этот ftp и сканирует (собирает) список всех фалов и папок (подпапок тоже).
После того как список собран, пользователь можно удалить из списка папки или файлы, которые он не желает использовать при синхронизации. По окончании всего процесса в Разделе "Источники" появится запись, если нажать на кнопку "инфо" для этой записи, то увидим данные куда коннектится (сервер, логин, пароль) и список файлов и папок для синхронизации.
ВНИМАНИЕ! Обязательно при синхронизации копировать такж и права папок и файлов.
2. Назначени. (Destinations)
Тут представлен список ftp (сайтов) куда будет производится копирование (синхронизация)
Все тоже самое что и в источниках, но не надо сканировать и хранить список файлов и папок.
3. Задания (Jobs)
В этом разделе представлен список заданий.
У каждого элемента списка есть возможность, удалить, редактировать, запустить.
Учитывая, что соедииненя между ftp могут быть не стабильными, нужно учесть момент дозакачки. В этом разделе пользователь может ставить задачи. При создании новой задачи, пользователь выбирает из списка Источников нужный источник. Выбирает из списка Назначений нужное назначение и сохраняет задачу.
Задача появляется в списке и нажав на кнопку Старт пользователь запускает ее.
ВНИМАНИЕ! Требуется озможность массового (bulk) выбора направлений.
Например, пользователь выбирает один источник, и 10 направлений. Эт задача будет означать, что из одного ftp файлы будут копироваться на несколько сайтов (ftp)