One or Zero
About
One or Zero is a help desk ticket/task management system.
From the authors: “OneOrZero is a powerful enterprise task management and help desk system used by companies and groups large and small to manage information and requests in their organization.”
Our Mods
System Architecture
Based on findings in the 1.7.3.1 release.
Base Modules (root)
/ – the “root” functionality
- index.php – the main application driver
- myopen.php – list my open tickets
- tcreate.php – create a ticket action
/index.php
URL “t” variable
A primary driving force that determines what the application should be doing. The $_GET[t] variable is the driver for more than one switch statement. The switch determines what to do based on what “t” has been set to.
Some of the actions include:
- tcre – run tcreate.php
- tse – run tsearch.php
- tmop – run myopen.php : my open ticket list
- tclo – run myclosed.php : my closed ticket list
- tfeed – run feedback.php
- tinf – run tinfo.php
- terr – execute printError($lang_missing_info) : tell user they missed entering something on a form
/myopen.php
Default columns displayed:
- ID
- Task Manager
- Group
- Short Description
- Created (date)
- Status
Admin Modules
/admin – the admin login specific modules
- control.php – the control panel (settings for the app)
- On form post the $_POST vars get dumped into a /configuration/website_settings.php file
Common Modules
/common – shared features among various parts of the system
- common.php – common/shared functions for the OOZ system
/common/common.php
function displayTicket()
Show the summary of a ticket in a table row format.
Lang Modules
/lang – stores the language (wording) manipulation code
-
- English.lang.php – the english phrases/words used throughout the application
Supporter Modules
/supporter – what gets called for users marked as “supporter”
- index.php – the main page for the support staff login
- tcreate.php – manages the creation of new tickets
- unassigned_tasks.php – list all unassigned tasks
/supporter/index.php
URL “t” variable
A primary driving force that determines what the application should be doing. The $_GET[t] variable is the driver for more than one switch statement. The switch determines what to do based on what “t” has been set to.
Some of the actions include:
- tcre – run tcreate.php
- tmop – run myopen.php : my open ticket list
- tunn – run unassigned_tasks.php
/supporter/unassigned_tasks.php
Show a list of the unassigned tickets in a table format.
- Displays header for the table
- calls displayTicket() from #/common/common.php
/supporter/mygroupopen.php
Show a list of the open tickets for the logged in person’s group(s) in a table format.
- Displays header for the table
- calls displayTicket() from #/common/common.php
Data Structure
The table names start with a prefix you define. We are using a table prefix of “X” in these examples.
X_tickets
+--------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | create_date | int(60) | NO | | 0 | | | groupid | int(60) | YES | | 1 | | | supporter | varchar(48) | NO | | NULL | | | supporter_id | int(60) | NO | | 0 | | | priority | varchar(48) | NO | | NULL | | | status | varchar(48) | NO | | NULL | | | user | varchar(255) | NO | | NULL | | | email | varchar(255) | NO | | NULL | | | office | varchar(48) | YES | | NULL | | | phone | varchar(48) | YES | | NULL | | | category | varchar(48) | NO | | NULL | | | platform | varchar(48) | NO | | NULL | | | short | varchar(255) | NO | | NULL | | | description | text | YES | | NULL | | | update_log | text | YES | | NULL | | | survey | int(1) | NO | | 0 | | | lastupdate | int(60) | NO | | NULL | | | severity | varchar(255) | NO | | NULL | | | project | varchar(255) | NO | | NULL | | +--------------+--------------+------+-----+---------+----------------+
X_tprojects
+---------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | rank | int(6) | NO | | 0 | | | project | varchar(255) | NO | | NULL | | +---------+--------------+------+-----+---------+----------------+
User Interface
Menu: Top Of Page
- The menu at the top of the page is generated via:
- /index.php file for normal users
- /supporter/index.php for admin users
- The actual text that is displayed is set via the “language file”, i.e. /lang/English.lang.php
Links
Related posts:
- array_key_exists() versus isset()
- Python: Importing Packages
- Commit Templates
- On Delete Cascade
- Database Definition Languages

Leave a comment