Admin Interface
With this module, community administrators can quickly and easily access and modify the contents of the community database.
Introduction
Basic Functionality
Data Category Index
Database Entry List
Object Attributes Form
Functionality
Login as
Community Object
Public Places
Home Objects
Members
Personal Images
Jobs
Events
Clubs
Groups
Shared Objects
Information Objects
Entries of Information Objects
Voting
CGI Program and Parameters
Input Parameter
Output Parameter
Error Parameter
HTML Templates
Functions
Introduction
As its name suggests, the Admin Interface gives community administrators a tool for managing the large quantities of data that comprise a community. It's designed to access the community server's database objects, in which the data that give your community its identity and character are stored. The database objects store information about the community structure, such as public places, homesteading areas, clubs, member data, etc.
For security reasons, access to the community database is limited to the persons defined as community administrators in global.cfg.
See the Data Model chapter for details about the community data structure.
Basic Functionality
Data Category Index
The screen is divided into two parts (frames). The left frame displays an index of the data categories. Some of the categories are summarized under a single entry (e.g. 'Home Objects'). When you click on such a link, a submenu with additional categories will be displayed. On activation of one of the data category links, a list of all database entries in the corresponding table will be displayed in the right frame. If there are too many entries to be displayed on one page, paging controls will also be displayed.
Database Entry List
After you select a data category, a list of all objects stored in the corresponding table will be displayed in the right frame. Entries whose attributes can be modified are displayed as links; you can click on them to load the Object Attributes Form where you can edit their attributes.
Filters
Depending on the selected data category, various filters are provided for controlling the display of data in the database entry lists. The most basic filter for all categories is the data object ID. Other filters include selection of a field to sort by, and text filters with wildcards. The sorting fields are primary keys of the database table.
Since it has the most entries, the 'Members' category offers the most filters; you have a choice of fields to sort by and can also specify the sort order (ascending/descending) of the entries.
Show/Hide Information Objects
Public places, home objects and clubs have information objects such as message board, inbox, calendar and chat object associated with them. Since the display of these objects can take up a lot of space, you can show or hide the links for administration of these objects by activating the 'Show/Hide Information Objects' button.
Show/Hide Maps & Icons
Home objects are represented by icons on the map of their parent home object. A different set of such icons and maps can be defined for each district. Since the display of these objects can take up a lot of space, you can show or hide the links for administration of these objects by activating the 'Show/Hide Maps & Icons' button.
Object Attributes Form
The attributes of some database entries can be displayed and edited in a special form, the Object Attributes Form. To access this form, click on an entry's link in the database entry list.
The layout and contents of an Object Attributes Form depend on the data structure of the selected database object. Some attributes can't be changed because of their relation to other database objects and the inconsistencies that would result.
The owner and access rights for the objects can be changed using the general change rights form.
Functionality
Login as
To change your identity, activate this link and you will get a login screen. Here you can login as a community administrator.
Note:
You have to login as a community administrator to have full access to the community database.
Community Object
The Community Object is a special database object which stores general information about the community. (This object is generally a place object with the ID 0000000000000000.) It stores the following general information about the community:
the name of the community
the community's owner
the metanames of the home objects (district, neighborhood, block, home); you can change these to match the purpose of your community
a table showing the number of community members whose nicknames begin with each letter and numeral
See Place (Object) Attributes for more details about the data structure.
Public Places
Use the Public Places link to create, update or delete public places. When you click on the link, a table containing the IDs, names and owners of each place in the database is displayed.
Use the filter text box or the paging controls to find the place that you want to edit.
If you want a place's information objects (message board, etc.) displayed in the table, click on the 'Show Information Objects' button. Click on the 'Hide Information Objects' button to remove the information objects from the table.
If you want to change the attributes of an existing place, click on the place's link in the ID column of the table to access its Object Attributes Form.
To create a new place and define its attributes, click on the 'Create new Place' link.
The following attributes can be set with the 'Create new Place' and 'Change Attributes for Place' forms:
ID (can only be set in the 'Create new Place' form)
The next free ID will be inserted automatically in this text field, but you can change it if you want to.
Full Name
Name of the place
Technical Name (can only be set in the 'Create new Place' form)
The CGI program place can access the place using this name.
Owner
Name of the member who owns the place.
Specify the owner name in the text box in the 'Create new Place' form.
$$In the 'Change Attributes for Place' form, this entry serves as a link to the 'Access Rights' form.
Owner Job/Assistant Job$$(can only be set in the 'Create new Place' form)
Jobs associated with the place $$Members with these job titles will also have owner access to the place.
Description
A text field for information about the place
Create also (can only be set in the 'Create new Place' form)
You can specify which information objects should be created with the place by clicking on the appropriate checkboxes. The information objects include message board, inbox, link list, chat and calendar.
When you are done creating a place, click the 'Create' button. If the $$process completes correctly, you'll see a new page with instructions about how to proceed further. These include modifications to the global.cfg file and creation of place-specific folders for templates, images and VRML worlds. A link that can be used to access the new place is also given. If you want to change the new place, you can click on the 'Edit Place Object' link.
When you are done editing a an existing place, click on the 'Update' button. If the update is successful, the message "Data updated successfully" will be displayed.
If you want to delete a place, click on the 'Delete' button in the 'Change Attributes for Place' form and respond affirmatively to the confirmation prompt.
See the module description Places for more details about place functionality.
See Place (Object) Attributes for more details about the data structure.
Home Objects
Home objects store the data that are used for displaying and configuring your community's homesteading areas. There are four types of home object, arranged in the hierarchy District, Neighborhood, Block, Home. So a community is comprised of districts, a district of neighborhoods, a neighborhood of blocks, and a block of homes. Like public places, home objects have owners who have the access rights to configure them. The homes can be owned by individual community members, who have the right to "furnish" them according to their tastes. $$How appropriate is this stuff? More that can be said?
The 'Home Objects' link in the left frame of the Admin Interface functions as a toggle: click on it once and the links for the different home object types appear; click again and they go away. Click on the the link for the type of home object you want edit. Information about the
District
Use the 'District' link to create, update or delete district home objects. When you click on the link, a table containing the IDs and names of the districts is displayed. The right column of the table also includes a 'List' link that you can click to display a district's neighborhoods.
Use the filter text box or the paging controls to find the district that you want to edit.
If you want links to a district's information objects (message board, etc.) displayed in the table, click on the 'Show Information Objects' button. Click on the 'Hide Information Objects' button to remove the information object links from the table.
If you want links to a district's maps and icons displayed in the table, click on the 'Show Maps & Icons' button. Click on the 'Hide Maps & Icons' button to remove the map and icon links from the table.
If you want to change the attributes of an existing district, click on its link in the ID column of the table to access the 'Change Attributes for District' form.
To create a new district and define its attributes, click on the 'Create new District' link.
The following attributes can be set with the 'Create new District' and 'Change Attributes for District' forms:
ID (can only be set in the 'Create new District' form)
The next free ID will be inserted automatically in this text field, but you can change it if you want to.
Name
Name of the district
Owner
Name of the member who owns the district.
Specify the owner name in the text box in the 'Create new District' form.
$$In the 'Change Attributes for District' form, this entry serves as a link to the 'Access Rights' form.
Owner Job/Assistant Job $$(can only be set in the 'Create new District' form)
Jobs associated with the place $$Members with these job titles will also have owner access to the place.
Description
A text field for information about the district
Icon
The name of an image file to be uploaded as icon for the district. You can use the 'Browse' button next to the text field to help you find the right image file.
Map Image
The name of an image file to be uploaded as district map. You can use the 'Browse' button next to the text field to help you find the right image file.
Background Image
The name of an image file to be uploaded as background image for the right action frame. You can use the 'Browse' button next to the text field to help you find the right image file.
Text Color/Background Color
Text and background colors for the district page and the subordinate home objects (neighborhoods,...). Enter an HTML standard hexadecimal RGB color code in the text boxes.
Link Color, Active Link Color, Visited Link Color
Colors for normal, active and visited links. Enter an HTML standard hexadecimal RGB color code in the text boxes.
Advertising URL/Advertising Image
A URL for an advertising link that will be associated with the image when it is displayed in the district. $$No text field or browse button for image here
Create also (can only be set in the 'Create new District' form)
You can specify which information objects should be created with the place by clicking on the appropriate checkboxes. The information objects include message board, inbox, link list, chat and calendar.
When you are done creating a district, click the 'Create' button. If the $$process completes correctly, you'll see a new page informing you that the district was created successfully and naming the directory in which the icon and map files have been stored. If you want to change the new district, you can click on the 'Edit District Object' link.
When you are done editing a an existing district, click on the 'Update' button. If the update is successful, the message "Data updated successfully" will be displayed.
If you want to delete a district, click on the 'Delete' button in the 'Change Attributes for District' form and respond affirmatively to the confirmation prompt.
See District Attributes for more details about the data structure.
Neighborhood
Use the 'Neighborhood' link to create, update or delete neighborhood home objects. When you click on the link, a table containing the IDs and names of the neighborhood is displayed. The right column of the table also includes a 'List' link that you can click to display the neighborhood's blocks.
Use the filter text box or the paging controls to find the neighborhood that you want to edit.
If you want links to a neighborhood's information objects (message board, etc.) displayed in the table, click on the 'Show Information Objects' button. Click on the 'Hide Information Objects' button to remove the information object links from the table.
If you want to change the attributes of an existing neighborhood, click on its link in the ID column of the table to access the 'Change Attributes for Neighborhood' form.
To create a new neighborhood, you have to go back to the District List and click on the 'List' link in the Neighborhoods column for the district to which you want add a new neighborhood. That will display the district's Neighborhood List, where you can click on the 'Create new Neighborhood' link to create a new one.
The following attributes can be set with the 'Create new Neighborhood' and 'Change Attributes for Neighborhood' forms:
ID (can only be set in the 'Create new Neighborhood' form)
The next free ID will be inserted automatically in this text field, but you can change it if you want to.
Name
Name of the neighborhood
Owner
Name of the member who owns the district.
Specify the owner name in the text box in the 'Create new District' form.
$$In the 'Change Attributes for Neighborhood' form, this entry serves as a link to the 'Access Rights' form.
Owner Job/Assistant Job$$(can only be set in the 'Create new District' form)
Jobs associated with the neighborhood $$Members with these job titles will also have owner access to the neighborhood.
Neighborhood Map
Index of the multimedia object to be used as neighborhood map. $$need more explanation
Description
A text field for information about the neighborhood
Create also (can only be set in the 'Create new Neighborhood' form)
You can specify which information objects should be created with the neighborhood by clicking on the appropriate checkboxes. The information objects include message board, inbox, link list, chat and calendar.
When you are done creating a neighborhood, click the 'Create' button. If the $$process completes correctly, you'll see the 'Change Attributes for Neighborhood' form with the message "Object successfully created." If you want to change the new neighborhood, you can do so in this form.
When you are done editing a an existing neighborhood, click on the 'Update' button. If the update is successful, the message "Data updated successfully" will be displayed.
If you want to delete a neighborhood, click on the 'Delete' button in the 'Change Attributes for District' form and respond affirmatively to the confirmation prompt.
See Neighborhood Attributes for more details about the data structure.
Block
Use the 'Block' link to create, update or delete block home objects. When you click on the link, a table containing the IDs and names of the blocks is displayed. The 'Homes' (right) column of the table includes 'List' links that you can click on to display a block's homes.
Use the filter text box or the paging controls to find the block that you want to edit.
If you want links to a block's information objects (message board, etc.) displayed in the table, click on the 'Show Information Objects' button. Click on the 'Hide Information Objects' button to remove the information object links from the table.
Creating a New Block
To create a new block, you have to go back to the Neighborhood List and click on the 'List' link in the Blocks column for the neighborhood to which you want add a new block. That will display the Update Wizard, with which you can click on an unused block. Then you'll see the form 'Multimedia Wizard - Block' in which you can set the following attributes:
Block usage
Specifies whether the block is free for use or can't be accessed; $$in the latter case community members would be unable to homestead there.
Name
Name of the block
Owner
Name of the member who owns the block
Choose a 2D icon
The icon you choose will represent the new block on the neighborhood map.
Click on the 'OK' button when you're done. The new block will be displayed on the neighborhood map.
Update/Delete a Block
If you want to change or delete an existing block, click on its link in the ID column of the table in the Block List to access the 'Change Attributes for Block' form. You can change the following attributes:
Name
name of the block
Owner
name of the member who owns the block
Owner Job/Assistant Job
jobs associated with the block
2D Place Usage
defines whether the block is in use right now or free
Block Icon
index of the 2D icon for the block
Block Map
index of the image used as block map
Description
information about the block
When you are done editing a an existing block, click on the 'Update' button. If the update is successful, the message "Data updated successfully" will be displayed.
If you want to delete a block, click on the 'Delete' button in the 'Change Attributes for Block' form and respond affirmatively to the confirmation prompt. See Block Attributes for more details about the data structure.
Home (Property)
With the Admin Interface homes (properties) can be updated and deleted.
Home Name
name of the home
Owner
name of the member who owns the home
Personal Images
link to the personal image object
Description
information about the home
2D Place Usage
specifies whether the home is in use right now or free
2D Home Icon
index of the multimedia object for the home icon on the block map
3D Home
index of the multimedia object for the 3D home
Description/URL Link <1-5>
personal link collection
See Home Attributes for more details about the data structure.
Members
With the Admin Interface member data can be created, updated and deleted.
Nickname (read-only)
member nickname
First/Last name
the real name of member
Email-address
member email address
Email-address (key) (read-only)
email address converted to lowercase
Immigration Email-address (read-only) email address given on immigration
Password
member password (can be changed by administrator)
Register-Key
key for member registration
Referencing Member (read-only) member referenced on immigration
Immigration Date (read-only)
date of immigration
Description
short description of the member
Information about the member got on immigration
the member can be asked some questions on immigration, the answers will be stored in the following attributes
Immigration Info 1/2
Immigration Info 1 - Comment
Age
Gender
Zip/Country Code
Last Access Date (read-only)
date of the last visit to the community
Member Exclusion the end date, the person who excluded and the reason of exclusion are stored in following attributes
Temporary Exclusion (until)
Excluded from
Reason
Money
money account
Number of Objects
maximum number of shared objects that the member might possess
Experience
experience points
Homelink to the home object of the member
News Letter
choice if the news letter should be mailed
Start Instant Message
choice if the instant message system should be started on startup
Chat Type
default chat type
User's Homepage
member's home page URL
See Member Attributes for more details about the data structure.
Personal Images
With the Admin Interface personal images can be updated and deleted.
Name
name of the personal image object
Status
status of a personal image (locked/released)
Owner
name of the member who owns the object
Filename
local filename of an uploaded personal image
Mime-Type
mime type of a personal image
See Multimedia Attributes for more details about the data structure.
Jobs
With the Admin Interface jobs can be created, updated and deleted.
Name
Job name
Email
Job email address
Min. Experience
minimum experience level to perform a job
Type
the type of job (specific=associated to a place)
Symbol
job symbol (bitmap or image)
Income Money
weekly money income for the job
Income Experience
weekly experience "income" for the job
See Job (Role) Attributes for more details about the data structure.
Events
With the Admin Interface all event data can be created, updated and deleted.
Events
Name ID
Name
name of the event
Creation Date
date of creation
Member counter for this event
Description
information about the event
Datatype of event location
tablename of the event location object
ID of event location
ID of the event location object
Experience given when registering for this event
Money given/taken from when registering for this event
Maximal number of event items for 1 member of type <1-3>
Increment event member counter for type <1-3>
Items
Name ID
Name
name of the event item
Creation Date
date of creation of the item
Number of event items still left
Maximum number of event items
Description
information about the item
Datatype of event location
tablename of the event location object
ID of event location
ID of the event location object
Status
status of the item
Type
type of the item
Experience given when member gets this item
Money given/taken when member gets this item
Members
Creation Date
Counter for this event member
Member Items
Creation Date
Counter for this event member item
Clubs
With the Admin Interface clubs can be updated and deleted. The creation of a club is possible on the Club Directory page.
Name
name of the club
Owner
name of the member who owns the club
Creation Date
creation date of the club
Owner/Assistant Job
jobs associated with the club
Keywords
keywords of the club
Place
place (district) the club related to (for categorisation)
Invitation Type
type of new member access to the club
Members
number of (invited) club members
Activity
Club Activity, count of members visited the club in the last week (in % of total member count)
Money
money account
Description
information about the club
Club Rules
rules of the clubs
Image States
states of the club images (locked/released)
Colors Wall/Floor/Ceiling
colors for the club house
Club Image/Meeting Room/Assembly Room/Gallery Images
colors for the club house
Description/URL
club link collection
See Club Attributes for more details about the data structure.
Groups
With the Admin Interface groups can be updated and deleted. At the moment, groups are only used for clubs. Groups are automatically created on creation of a new club.
Name
name of the group
Name (lower) (read-only)
name of the group converted to lowercase
See Groups Attributes for more details about the data structure.
Shared Objects
Categories
...
Objects
...
See Shared Object Attributes for more details about the data structure.
Information Objects
With the Admin Interface information objects can be updated and deleted.
Name
name of the information object
Owner
name of the member who owns the information object
Messages/Inbox Messages/Events/Topics/Links
links to the related information entries
HTML allowed
defines whether HTML tags are allowed in the text
Description
detailed information, e.g. text of a message or text of a board
See Information Attributes for more details about the data structure.
Entries of Information Objects
With the Admin Interface information entries can be updated and deleted.
The entry objects are accessible at the form of the related information object.
Subject
subject of the information entry
Text
text of the information entry
From
author of the entry
Date
for calendar entries: date of the event
for all other entries: creation date of the information entry
Location (Calendar Entries only)
location of the posted event
Last Access Date (Link List Entries only)
date of the last access of this link
URL (Link List Entries only)
URL of the link
Description
further information about the entry
See Information Attributes for more details about the data structure.
Voting
With the Admin Interface voting objects can be updated and deleted.
Topic
topic of the vote
Initiator
name of the member who initiated the vote
Type of Vote
Place (read-only)
type of the vote
Number of Votes of the Member (read-only)
number of votes that the member used
See Voting Attributes for more details about the data structure.
Admin CGI program
The Admin Interface module uses the admin CGI program to run the functions described above.
Input Parameters
This list shows input parameters used by this CGI program (database attributes read from input forms are not listed). Depending on the action processed by this program, only part of these parameters might be used.
Additionally global variables are always used.
Name Description
ac defines the action (function) to be processed by the CGI program following actions are defined:
read (default)
showcreate
create
show
list
edit
delete
TPL template name for print action, the template path and extension .tmpl will be added automatically. E.g. TPL=admin/admin.tmpl will print templates/admin/admin.tmpl
DTY data type of object, e.g. "O" for public place
KTY key type of object, e.g. "ID" for primary key (identifier)
KEY key value of object, e.g. "0000000000000002" for city hall
edit if set the edit function is performed
editrolem if set the edit function is performed and updates the rolemember table.
KLEN length of the key to be created by the showcreate function
POST postfix value of the key to be created by the showcreate function
PRE prefix value of the key to be created by the showcreate function
Output Parameters
Name Description
The following Parameters always set
CTN_CITY community meta name
CNM_CITY district meta name
ENM_CITY neighborhood meta name
BNM_CITY block meta name
PNM_CITY home meta name
Read Data from Databases for Community Object
MemberCount number of registered members
Create a new 3D Home Database Object
VRMLPATH directory path where the VRML files for the 3D homes should be saved
Create a new Public Place Database Object
globalEntry
description of the entries in the file global.cfg
PLC_STR technical name of the public place by which the place could accessed with the CGI program place
Shared Objects
CAT_ID_ list of category IDs for shared objects
CAT_NAME_ list of category names for shared objects
CAT_SEL_ set to 'selected' for the referencing category
Clubs
COL_ID_ list of district IDs
COL_NAM_ list of district names
COL_SEL_ set to 'selected' for the referencing category
Multimedia Objects
NHM_INDEX_ list of neighborhood map IDs
NHM_SEL_ set to 'selected' for the referencing map
BLS_INDEX_ list of block icon IDs
BLS_SEL_ set to 'selected' for the referencing icon
BLM_INDEX_ list of block map IDs
BLM_SEL_ set to 'selected' for the referencing map
HIC_INDEX_ list of home icon IDs
HIC_SEL_ set to 'selected' for the referencing icon
H3D_INDEX_ list of 3D home IDs
H3D_SEL_ set to 'selected' for the referencing 3D home
Error Parameters
If an error occurs or an operation fails one of the following parameters is set and the template specified by TPL is displayed.
Name Description
adminerror001 insufficient access rights
adminerror002 no template specified
adminerror003 parameter DTY, KTY, or KEY are not specified
adminerror004 ID already in use
adminerror005 data object could not be created
adminerror006 Sorry, this <$HOM_OBJ> could not be deleted! There are <$CLD_OBJ>s defined!
adminerror007 a given file could not be saved (the name of the file is stored in the parameter FILE and the exact reason in ERRKIND)
adminerror008 Could not update multimedia parent object!
adminerror009 Could not create multimedia object!
HTML Templates
This CGI program uses the following templates. The default templates are stored in the clubdir respectively club folder. The usage of these templates is described in detail below in the chapter Functions.
Template Description
Statistics Templates
admin.tmpl administration index template
errormsg_inc.tmpl include template with error messages
body_inc.tmpl include template with body HTML document information (like background color etc.)
bodyload_inc.tmpl include template with body HTML document information (like background color etc.) it defines additional the function "onLoadFunction()" to be executed on load of the HTML document.
district_info.tmpl description of the further proceeding after creating a new district database object
place_info.tmpl description of the further proceeding after creating a new place database object
reload.tmpl template which loads a new HTML document depending on a given parameter
Functions
Some output variables are set depending on input variables. Please see Output Parameters for preconditions and description of the variables. General access rights variables are always set.
Read Data from Database
Show a Creation Form
Create a new Database Object
Display a Template
List Database Objects
Edit Database Object
Delete Database Object
Read Data from Databases
Read any attributes from the database and display them in a template.
input: ac=read, DTY, KTY, KEY, TPL
templates: the template specified in TPL
output: DTY, KTY, KEY, TPL, all that are specified in the configuration file .cfg
Show a Creation Form
This function displays a form for entering data type specific data and generates a key value for the attribute specified by the KTY parameter.
input: ac=showcreate, DTY, KTY, TPL, KLEN, PRE, POST
templates: the template specified in TPL
output: DTY, KTY, TPL, create, ,
Create a new Database Object
Insert a new object with attributes into the database and display the result in a template.
For public place and district objects a template with information about the further proceeding are displayed.
input: ac=create, DTY, KTY, TPL, additional
templates: the template specified in TPL respectively district_info.tmpl or place_info.tmpl
output: DTY, KTY, TPL, all that are specified in the configuration file .cfg
Display a Template
Displays the in TPL specified template without reading data from database.
input: ac=show, TPL
templates: the template specified in TPL
output: no specific output
List Database Objects
List any objects in the database and display them in a template.
Special input and output parameters:
Variable Description
SORTORDER = "+" or "-" describes the list direction, starting at the current entry
NEXT = "yes" only set if there are more entries to list in the direction defined through SORTORDER="+".
Can be used to display a next button.
PREV = "yes" only set if there are more entries to list in the direction defined through SORTORDER="-".
Can be used to display a previous button.
STARTKEY value of starting key
FIRSTID value of starting id used if SORTORDER="-"
LASTID value of starting id used if SORTORDER="+"
FIRSTKEY value of starting key used if SORTORDER="-"
LASTKEY value of starting key used if SORTORDER="+"
input: ac=list, DTY, KTY, KEY, TPL, hist, KFM, KFT, SORTORDER, NEXT, PREV, STARTKEY, FIRSTKEY, LASTKEY, FIRSTID, LASTID
templates: the template specified in TPL
output: DTY, KTY, KEY, TPL, hist, KFM, KFT, SORTORDER, NEXT, PREV, STARTKEY, FIRSTKEY, LASTKEY, FIRSTID, LASTID, all that are specified in the configuration file .cfg
Edit Database Object
Update any attributes in the database and display the result in a template.
input: ac=edit, DTY, KTY, KEY, TPL, additional
templates: the template specified in TPL
output: DTY, KTY, KEY, TPL, all that are specified in the configuration file .cfg
Delete Database Object
Delete any object from the database and all related objects. After successful deleting the object the new list of database objects are displayed.
input: ac=delete, DTY, KTY, KEY, TPL, additional
templates: the template specified in TPL and TPL+s
output: DTY, KTY, KEY, TPL, all that are specified in the configuration file s.cfg