Google Summer of Code Proposals
Proposal 1: The system of scheduled tasks
Abstract:
The system of scheduled tasks is to make the site function automatically.
It gives the administrator an opportunity to schedule some tasks and then
just follow their accomplishment from the administrator's interface.
The following is to be scheduled:
Detailed description:It gives the administrator an opportunity to schedule some tasks and then
just follow their accomplishment from the administrator's interface.
The following is to be scheduled:
- Optional backup
- Holiday greetings
- Clean up of Temp Folder
- File synchronization (might be with ftp)
- Update checking
- Search indexing (need an advice)
- Custom Scripts (for advanced administrators)
I am Edvard Ananyan, a 19 years old undergraduate student at Yerevan State
University majoring in Applied Math and Applied Physics (Department of Physics)
and highly interested in computer science. For more info about me, please visit
http://edo.webmaster.am
I offer to create a new tool for Joomla administrators, which, as mentioned
above, will make the site perform some scheduled tasks automatically, and thus,
will make the administrator's work easier.
The following steps are to be done:
With my participation in GSoC I hope to make new contacts with my colleagues around
the world, and, of course, to get valuable knowledge, skills, and experience.
University majoring in Applied Math and Applied Physics (Department of Physics)
and highly interested in computer science. For more info about me, please visit
http://edo.webmaster.am
I offer to create a new tool for Joomla administrators, which, as mentioned
above, will make the site perform some scheduled tasks automatically, and thus,
will make the administrator's work easier.
The following steps are to be done:
- Creating an interface for the administrator, which will let him to make a
custom script schedule. This step will not take long, since I already
have an experience of creating such interfaces. - Testing the scheduling mechanism on Windows and Unix.
- Writing the default custom scripts listed above using PHP. If required,
other programming languages are also possible to use. After each script is
written, it has to be tested. My priority is optional backup (this is to be
done before the mid-term), after which, the queue is as listed above. - Writing the documentation including the user guide and a new custom
script-writing guide. - If there is a time, I will also try to create and test an interface
for Joomla 1.0
- Optional backup
It will be possible to choose what to backup (e.g. Database, folders, etc.),
select the backup format (e.g. tar, gz, zip, bz2, etc.)
and the destination folder (can be on other ftp server) - Holiday greetings
The special dates will be marked and the corresponding greeting texts will
be prepared, for which I have to research the regional holidays and greetings
and include all of them. Also an administrator can select some other dates and
prepare greetings, or customize default greetings. - Clean up of Temp Folder
Administrators will be given an opportunity to mark the folders that are to
be cleaned up periodically. An option of cash cleanup will be also included. - Files synchronization (might be with ftp)
The idea is clear. Administrators will choose files/folders on remote and
local sites, which he would like to keep synchronized. - Update checking
Some information concerning updates of components, modules, and plug-ins will
be sent via e-mail to administrators, and then, they can proceed. - Search indexing (need an advice)
I have yet to get familiar with the way Joomla makes search. If I get some
information and a little help, I will proceed with this task as well. - Custom Scripts
Administrators will be given opportunity to create and schedule their own scripts.
- PHP
- As much Joomla API as possible
- Cron on Unix systems and schtasks.exe on Windows for scheduling.
With my participation in GSoC I hope to make new contacts with my colleagues around
the world, and, of course, to get valuable knowledge, skills, and experience.
