[Package Index | Mudlib Index | Effect Index]

File /obj/handlers/inherit/case_control.c

This is the system for case control. It keeps tracks of all the current open cases in the area and any modifications that are done to them.

Written by Pinkfish

Started Tue Jul 11 18:09:01 PDT 2000

Includes

This class includes the following files /include/nomic_system.h

Method index

Public Functions

These are functions that everyone can access.

add_new_case
int add_new_case(string area,
                 string opener,
                 string short,
                 string * people)

This method opens a new case.

Parameters:
area - the area the case is in
opener - the person who opened it
short - the short description of the case
people - the people involved

Returns:
0 on failure and teh case id on success


add_note_to_case
int add_note_to_case(string area,
                     int id,
                     string person,
                     string text)

This method adds a note to the case.

Parameters:
area - the area to get the case in
id - the id of the case
person - the person adding the note
text - the actual note text

Returns:
1 on success, 0 on failure


add_person_to_case
int add_person_to_case(string area,
                       int id,
                       string adder,
                       string person,
                       string text)

This method adds a person to the case.

Parameters:
area - the area the case is in
id - the id of the case
adder - the person that adds the person
person - the person to be added to the case
text - the reason for adding the person

Returns:
1 on success, 0 on failure


appeal_case
int appeal_case(string area,
                int id,
                string appealer,
                string reason)

This method sets the case as reopened for an appeal. After an appeal the case will be closed again.

Parameters:
area - the area the case is in
id - the of the case to appeal
appealer - the person who does the appeal
reason - the reason for the appeal

Returns:
1 on success, 0 on failure


close_case
int close_case(string area,
               int id,
               string closer,
               string result,
               mixed data)

This method closes the case.

Parameters:
area - the area the case is in
id - the id of the case to close
closer - the person that closes the case
result - the string saying what the result of the case is
desc - the description of the close reason
data - special internal data used specifically for appeals

Returns:
1 on success, 0 on failure


create_area
void create_area(string area)

This method creates an area.

Parameters:
area - the name of the area to create


query_case_file_name
string query_case_file_name(int id)

This method returns the file name for the case given the id.

Parameters:
id - the id to return

Returns:
the file name


query_closed_case
class nomic_case query_closed_case(string area,
                                   int id)

This method returns the case associated with the specified closed case.

Parameters:
area - the area to look for the case in
id - the id of the case

Returns:
the case class


query_closed_cases
int * query_closed_cases(string area)

This method returns the cases which are currently closed.

Parameters:
area - the area to get the cases in

Returns:
the list of closed cases


query_event_name
string query_event_name(int type)

This method returns the short name of the event type.

Parameters:
type - the type to find the name of

Returns:
the name of the type


query_next_case_id
int query_next_case_id()

This method finds the next case id.

Returns:
the next case id


query_next_note_id
int query_next_note_id()

This method finds the next note id.

Returns:
the next note id


query_note
class nomic_case_note query_note(int note_num)

This method return the exciting note associated with the case.

Parameters:
note_num - the number of the note

Returns:
the note class, or 0 on failure


query_note_file_name
string query_note_file_name(int id)

This method returns the file name for the note given the id.

Parameters:
id - the id to return

Returns:
the file name


query_open_case
class nomic_case query_open_case(string area,
                                 int id)

This method returns the case associated with the specified open case.

Parameters:
area - the area to look for the case in
id - the id of the case

Returns:
the case class


query_open_cases
int * query_open_cases(string area)

This returns the cases which are currently open.

Parameters:
area - the are to get the cases in

Returns:
the list of opened cases


query_recently_closed_case
class nomic_case query_recently_closed_case(string area,
                                            int id)

This method returns the case associated with the specified recently closed case.

Parameters:
area - the area to look for the case in
id - the id of the case

Returns:
the case class


query_recently_closed_cases
int * query_recently_closed_cases(string area)

This method returns the set of recently closed cases. These are cases that can be appealed.

Parameters:
area - the area to get the cases in

Returns:
the list of recently closed cases


remove_person_from_case
int remove_person_from_case(string area,
                            int id,
                            string remover,
                            string person,
                            string text)

This method removes a person from the case.

Parameters:
area - the area the case is in
id - the id of the case
remover - the person that removes the person
person - the person to be removed to the case
text - the reason for removeing the person

Returns:
1 on success, 0 on failure


update_recently_closed_cases
void update_recently_closed_cases()

This method goes through and checks the recently closed cases to see if any of them need to be moved to the closed set.