By: Team T09-3
Since: Sep 2018
Licence: NUS
- 1. Introduction
- 2. Quick Start
- 3. General Features
- 3.1. Viewing help
- 3.2. Listing all persons
- 3.3. Selecting a person
- 3.4. Listing entered commands
- 3.5. Undoing previous command
- 3.6. Redoing the previously undone command
- 3.7. Undoing all previous commands
- 3.8. Redoing all previously undone commands
- 3.9. Clearing all entries
- 3.10. Exiting the program
- 3.11. Saving the data
- 3.12. Encrypting data files
[coming in v2.0]
- 4. Main Features
- 5. Record feature
[coming in v2.0]
- 6. FAQ
- 7. Command Summary
1. Introduction
ClubHub (CH) is for those who prefer to use a desktop app for managing members, inventory, finances and events in their club. More importantly, CH is optimized for those who prefer to work with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, CH can get your club management tasks done faster than traditional GUI apps. Interested? Jump to the Section 2, “Quick Start” to get started. Enjoy!
2. Quick Start
-
Ensure you have Java version
9
or later installed in your Computer. -
Download the latest
addressbook.jar
here. -
Copy the file to the folder you want to use as the home folder for your ClubHub.
-
Double-click the file to start the app. The GUI should appear in a few seconds.
-
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
list
: lists all contacts -
help
: opens up this user guide -
exit
: exits the app
-
-
Refer to Section 3, “General Features” for details of each command.
3. General Features
Command Format
-
Words in
UPPER_CASE
are the parameters to be supplied by the user e.g. inadd n/NAME
,NAME
is a parameter which can be used asadd n/John Doe
. -
Items in square brackets are optional e.g
n/NAME [t/TAG]
can be used asn/John Doe t/friend
or asn/John Doe
. -
Items with
…
after them can be used multiple times including zero times e.g.[t/TAG]…
can be used ast/friend
,t/friend t/family
etc. -
Parameters can be in any order e.g. if the command specifies
n/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable.
3.1. Viewing help
Opens up this user guide
Format: help
3.2. Listing all persons
Shows a list of all persons in the ClubHub.
Format: list
3.3. Selecting a person
Selects the person identified by the index number used in the displayed person list.
Format: select INDEX
Examples:
-
list
select 2
Selects the 2nd person in ClubHub. -
find Betsy
select 1
Selects the 1st person in the results of thefind
command.
3.4. Listing entered commands
Lists all the commands that you have entered in reverse chronological order.
Format: history
Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. |
3.5. Undoing previous command
Restores ClubHub to the state before the previous undoable command was executed.
Format: undo
Undoable commands: those commands that modify ClubHub’s content ( |
Examples:
-
delete 1
list
undo
(reverses thedelete 1
command) -
select 1
list
undo
Theundo
command fails as there are no undoable commands executed previously. -
delete 1
clear
undo
(reverses theclear
command)
undo
(reverses thedelete 1
command)
3.6. Redoing the previously undone command
Reverses the most recent undo
command.
Format: redo
Examples:
-
delete 1
undo
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command) -
delete 1
redo
Theredo
command fails as there are noundo
commands executed previously. -
delete 1
clear
undo
(reverses theclear
command)
undo
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command)
redo
(reapplies theclear
command)
3.7. Undoing all previous commands
Restores ClubHub to the state before all previous undoable commands were executed.
Format: undoAll
Examples:
-
deleteItem 1
deleteItem 2
undoAll
(reverses both thedeleteItem 1
anddeleteItem 2
commands)
3.8. Redoing all previously undone commands
Reverses all undo commands.
Format: redoAll
-
deleteItem 1
deleteItem 2
undo
(reverses thedeleteItem 2
command)
undo
(reverses thedeleteItem 1
command)
redoAll
(reapplies both thedeleteItem 1
anddeleteItem 2
commands) -
deleteItem 1
redoAll
TheredoAll
command fails as there are noundo
commands executed previously. -
deleteItem 1
addItem n/Ball q/1 l/Storeroom
undoAll
(reverses thedeleteItem 1
andaddItem n/Ball q/1 l/Storeroom
commands)
redoAll
(reapplies thedeleteItem 1
andaddItem n/Ball q/1 l/Storeroom
commands)
3.9. Clearing all entries
Clears all entries from ClubHub.
Format: clear
3.10. Exiting the program
Exits the program.
Format: exit
3.11. Saving the data
ClubHub data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
3.12. Encrypting data files [coming in v2.0]
{explain how the user can enable/disable data encryption}
4. Main Features
4.1. Members
4.1.1. Adding a member: addmember
Adds a person to the ClubHub
Format: addmember n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS c/POSTALCODE m/MAJOR [t/TAG]…
A person can have any number of tags (including 0) |
Examples:
-
addmember n/John Doe p/98765432 e/johnd@example.com a/311, Clementi Ave 2, #02-25 c/609653 m/Computer engineering t/friends t/owesMoney
4.1.2. Editing a member : editmember
Edits an existing person in the ClubHub.
Format: editmember INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [c/POSTALCODE] [m/MAJOR] [t/TAG]…
Examples:
-
editmember 1 p/91234567 e/johndoe@example.com
Edits the phone number and email address of the 1st person to be91234567
andjohndoe@example.com
respectively. -
editmember 2 n/Betsy Crower t/
Edits the name of the 2nd person to beBetsy Crower
and clears all existing tags.
4.1.3. Locating members by name: find
Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Examples:
-
find John
Returnsjohn
andJohn Doe
-
find Betsy Tim John
Returns any person having namesBetsy
,Tim
, orJohn
4.1.4. Locating members by major: findmajor
Finds persons whose names contain any of the given keywords.
Format: findmajor KEYWORD [MORE_KEYWORDS]
Examples:
-
findmajor Computer Engineering
Returns member whose major isComputer Engineering
-
findmajor Engineering
Returns members whose major contains the keywordEngineering
4.1.5. Locating members by phone number: findphone
Finds persons whose names contain any of the given keywords.
Format: findphone KEYWORD [MORE_KEYWORDS]
Examples:
-
findphone 97233234
Returns member whose phone number is97233234
-
findphone 97233234 84280511
Returns members whose phone numbers are`97233234 or 84280511'
4.1.6. Locating members by postalcode: findpostalcode
Finds persons whose names contain any of the given keywords.
Format: findpostalcode KEYWORD [MORE_KEYWORDS]
Examples:
-
findpostalcode 609653
Returns member whose postalcode is609653
-
findpostalcode 609653 555555
Returns members whose postalcodes are609653 or 555555
4.1.7. Deleting a member : delete
Deletes the specified person from ClubHub.
Format: delete INDEX
Examples:
-
list
delete 2
Deletes the 2nd person in ClubHub. -
find Betsy
delete 1
Deletes the 1st person in the results of thefind
command.
4.2. Accounts
The accounts features a ledger column to record the spending of the club on any date in the form of DD/MM. There are 4 basic commands allowing the user to add or delete a ledger, and to credit or debit money from any date in the list of records.
4.2.1. Adding a ledger: addLedger
Adds a ledger to the ledger column.
Format: addLedger d/[DD/MM]
Example: addLedger d/ 10/10
4.2.2. Deleting a ledger: deleteLedger
Deletes a ledger from the log.
Format: deleteLedger d/[DD/MM]
Example: deleteLedger d/ 10/10
4.2.3. Crediting a ledger: credit
Increase the balance of a ledger on a date indicated.
Format: credit d/[DD/MM] b/[NUM]
Example: credit d/ 10/10 b/ 100
4.2.4. Debiting a ledger: debit
Decrease the balance of a ledger on a date indicated.
Format: debit d/[DD/MM] b/[NUM]
Example: debit d/ 10/10 b/ 100
4.3. Calendar
4.3.1. List events: listEvent
Lists all the events sorted by date.
Format: listEvent
Example:
* listEvent
List all the events in the ClubHub.
4.3.2. Adding an event: addEvent
Adds an event to the calendar.
Format: addEvent n/EVENT_NAME v/VENUE D/DESCRIPTION d/EVENT_DATE
The Event name cannot be the same as an existing one (Two events are regarded as the same when they have the same name and date). |
Example:
-
`addEvent n/Basketball training v/MPSH3 D/Bring your own basketball d/10/12
4.3.3. Editing an event: editEvent
Edits an existing event in the ClubHub.
Format: editEvent INDEX n/EVENT_NAME v/EVENT_VENUE D/EVENT_DESCRIPTION d/EVENT_DATE
Example:
-
editEvent 1 n/Basketball training v/Sports Center D/bring your own basketball d/12/12
Edit the venue and the date of the 1st event toSports Center
and12/12
respectively.
4.3.4. Deleting event: deleteEvent
Deletes an existing event from the ClubHub.
Format: deleteEvent [INDEX]
.
Example:
-
deleteEvent 1
Delete the event who’s index is 1. === ItemList
4.3.5. Adding an item: addItem
Adds a item to the ItemList
Format: addItem n/ITEM_NAME q/ITEM_QUANTITY l/ITEM_LOCATION
Examples:
-
addItem n/Basketball q/7 l/Storeroom
-
addItem n/Chairs q/2 l/Clubroom
4.3.6. Deleting an item: deleteItem
Deletes the specified item from ItemList.
Format: deleteItem INDEX
Examples:
-
deleteItem 2
Deletes the 2nd item in ItemList. -
deleteItem 13
Deletes the 13th item in ItemList.
4.3.7. Edit an item: editItem
Edits an existing item in the ItemList.
Format: editItem INDEX [n/ITEM_NAME] [q/ITEM_QUANTITY] [l/ITEM_LOCATION]
Examples:
-
editItem 2 l/Cabinet
Edits the location of the 2nd item to beCabinet
. -
editItem 1 n/Soccer Balls q/4
Edits the name and quantity of the 1st item to beSoccer Balls
and6
respectively.
4.3.8. Increase quantity of an item: increaseItem
Increases the quantity of existing item in the ItemList.
Format: increaseItem INDEX q/ITEM_QUANTITY
Examples:
-
increaseItem 2 q/1
Increases the quantity of the 2nd item by1
.
4.3.9. Decrease quantity of an item: decreaseItem
Decreases the quantity of existing item in the ItemList.
Format: decreaseItem INDEX q/ITEM_QUANTITY
Examples:
-
decreaseItem 2 q/1
Decreases the quantity of the 2nd item by1
.
4.3.10. Locating items by name: findItem
Finds items whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Examples:
-
find Balls
Returnsballs
andSoccer Balls
-
find White Soccer Balls
Returns any item having namesWhite
,Soccer
, orBalls
4.3.11. Listing all items : listItems
Shows a list of all items in the ClubHub.
Format: listItems
5. Record feature [coming in v2.0]
Record feature allows the user to update many new club information all at once.
For Example:
`Bernice` pays `$100` membership fee, attends `Basketball training on 01/11` and borrows `1 chair`.
In order to record this information on Clubhub, the user just has to enter the following command:
AddRecord M/Bernice d/10/10 b/100 D/01/11 n/chair q/-1
This command will do the following:
-
Look for the name Bernice to see whether it already exists in Clubhub (It will inform the user that the input is invalid if the name does not already exist in Clubhub)
-
Add a ledger in
Club Account
panel and update the balance accordingly -
Add a basketball event on 01/11 in
Club Calendar
-
Take away 1 chair from the inventory from
Club Inventory
Furthermore, there will a panel at the bottom of Clubhub to show history of all the Records
added
6. FAQ
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous ClubHub folder.
7. Command Summary
-
Help :
help
-
Select :
select INDEX
e.g.select 2
-
History :
history
-
Undo :
undo
-
Redo :
redo
-
UndoAll :
undoAll
-
RedoAll :
redoAll
-
List :
list
-
Addmember :
addmember n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS c/POSTALCODE m/MAJOR [t/TAG]…
-
Editmember :
editmember INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [c/POSTALCODE] [m/MAJOR] [t/TAG]…
-
Findbyname :
find KEYWORD [MORE_KEYWORDS]
-
Findbymajor :
findmajor KEYWORD [MORE_KEYWORDS]
-
Findbyphonenumber :
findphone KEYWORD [MORE_KEYWORDS]
-
Findbypostalcode :
findpostalcode KEYWORD [MORE_KEYWORDS]
-
Deletemember :
delete INDEX
-
AddLedger:
addLedger d/[DD/MM]
-
DeleteLedger :
deleteLedger d/[DD/MM]
-
Credit:
credit d/[DD/MM] b/[NUM]
-
Debit:
debit d/[DD/MM] b/[NUM]
-
AddEvent :
addEvent n/EVENT_NAME v/VENUE d/DESCRIPTION D/EVENT_DATE
-
EditEvent :
editEvent EVENT_NAME to EVENT_NAME EVENT_DATE EVENT_LOCATION EVENT_DESCRIPTION
-
DeleteEvent :
deleteEvent n/EVENT_NAME
-
AddItem :
addItem n/ITEM_NAME q/ITEM_QUANTITY l/ITEM_LOCATION
-
DeleteItem :
deleteItem INDEX
-
EditItem :
editItem INDEX [n/ITEM_NAME] [q/ITEM_QUANTITY] [l/ITEM_LOCATION]
-
IncreaseItem :
increaseItem INDEX q/ITEM_QUANTITY
-
DecreaseItem :
decreaseItem INDEX q/ITEM_QUANTITY
-
FindItem :
findItem KEYWORD [MORE_KEYWORDS]
-
ListItem :
listItems