
The purpose of this project is to track and manage office activity. It is primarily focused on company - client relations, such as project scheduling, job ordering, task tracking, and client management, as well as regular office routines including time sheets, working hours, vacations, and personal days.
Every aspect of office operations is framed within this project, making it a central tool for daily work organization and reporting.
The Task & Invoice System (E-Office) is a continuous, long-term project. On a regular basis - or when requested by a client - I modify existing functionality, add new features, and update the system using the latest available web solutions.
The latest major addition to the project is the Invoice System , which allows generating invoices based on tracked working time and completed tasks. This module connects job data, time tracking, and client information, extending the system from internal task management into financial and billing support.
The system was programmed for my former company. All information is confidential; therefore, clients’ names and team members’ names (with the exception of my own) have been blurred. This description presents only selected functionalities - the complete job system consists of several dozen small and large scripts and modules working together.
The main dashboard displays all jobs, organized into several sections:
The system is continuously updated and improved. This screenshot presents a newly added section - Jobs I recently worked on. Each user can select up to 9 recent jobs to display, or disable this section entirely.
Whenever a new job is assigned, an automatic email notification is sent to the employee. Additionally, any job that has not yet been opened is marked with a "new job" icon.
While adding a new user, the administrator can define the employee’s access level. A user can be assigned superuser (admin) privileges, granting access to all system areas and additional advanced tools, or receive access limited to selected sections only.
A user authorized to create jobs starts by selecting a client from a drop-down menu, then chooses a project. Each client may have multiple projects, and each project can contain multiple jobs. The user then completes all required job details.
Once a job is scheduled, assigned team members can access full job details. During development, comments can be added by team members or by the client. Clients have access to a dedicated panel showing job progress and related information.
Each job may consist of multiple tasks. Every task is tracked individually to measure the time required for completion. When creating a new task, a short description must be provided.
Each task can be paused, resumed, or completed. Tasks can also be deleted or have their time adjusted. If an employee forgets to stop a task, they can request a correction, which is sent to a superuser for approval and adjustment
A single job may involve multiple employees from different departments and dozens of tasks. Every minute of work is recorded accurately.
The calendar displays upcoming events and tracks personal days such as vacations or sick leave. Users can review their working hours at the bottom of the page. Multiple login and logout sessions are supported, and time entries can be edited or correction requests submitted.
The original PHP-based calendar was replaced with a jQuery / JavaScript solution for better performance and user experience.
Summary: Font-end and Back-end developer, also designer with 27+ years of experience. Currently based in Poland. Eligible to work in the US (US Social Security Number holder) for any employer on W2 / 1099 basis. Utilizes both technical skills and designing aptitude. Lived and worked in Europe, Australia and North America.
PHP CMS HTML5 CSS3 RWD OOP MySQL PDO JS jQuery JSON GIT Bitbucket GitHub Gulp
I've implemented language version feature, ready for additional languages, based on URL modification. Doesn't rely on cookies or sessions and is available via a /{lang} modifier. More about languages
Zaimplementowałem wersję językową, gotową na dodanie kolejnych języków, opartą na modyfikacji URL, która nie korzysta z plików cookie ani sesji. Wersja językowa dostępna jest przez modyfikator /{język}. Więcej o językach