Customer center configuration

The templates in the customer care center are also built up using the parser variables. Simple changes can be done using the parser variables, but if you are to do more advanced changes, you should consider using CRMScript, which is far more powerful and can coexist with parser variables.

The Customer Center is built up of different templates.

Common parser variables

The following parser variables are common for all the templates:

VariableDescription
AuthProgramAllThe URL used for accessing this page, with the session key added
AuthProgramUnderscoreThe path to customer.exe with the session key and any CGI variables starting with an underscore
AuthProgramThe same as AuthProgramUnderscore, except that it does not pay attention to CGI variables with an underscore
CustSessionKeyThe session key
authenticatedTrue if the customer has been authenticated, false if not
chatTrue if the chat module is available
faqTrue if the FAQ module is available
WwwRootThe subdirectory that Customer Service might be installed to. Normally this will just be ”/”, but if installed in a subdirectory you must pay attention to this when referencing for example the graphic files
GfxRootThe virtual path to the graphic files
GfxPathThe virtual path to the language-dependent graphic files. This variable pays attention to the language of the customer
config.browserThe browser type used
GfxBaseThe same as GfxPath but it might include the full URL if absolute URLs are used and configured
GfxUrlThe same as GfxRoot but it might include the full URL if absolute URLs are used and configured
ProgramThe URL to the customer.exe program. Use this if you use cookies for storing the session key of the customer
contentFileThe name of the template that will match the chosen action. See also framework.html.

addMessage.html

This is the template used when adding a message to an existing request. The following parser variables are available:

  • Ticket
  • Company
  • Customer

In addition, the following parser variables are available:

VariableDescription
mailCcThe cc mail addresses when doing a post
messageThe message when doing a post
attachmentsThe attachment ids when doing a post

changeCust.html

This is the template used when a customer changes their information. The following parser variables are available:

  • Company
  • Customer

In addition, the following parser variables are available:

VariableDescription
cellphoneThe value in the cellphone field
phoneThe value in the phone field
lastnameThe value in the lastname field
firstnameThe value in the firstname field

doneRegister.html

This is the template used to display a welcome message when a new customer has registered. The following parser variables are available:

  • Company
  • Customer

In addition, the following parser variables are available:

VariableDescription
custPasswordThe password for the new customer. This might be in encrypted form if turned on
custUsernameThe username for the new customer

framework.html

This is a special template. The framework.html is the framework that will surround all the other templates. In this way, you do not need to style all the other templates.

You can use the same parser variables in this file as with the other files. It is the chosen action that determines what is available here, so only use parser variables that you are certain will exist.

Pay attention to the parser command %INCLUDE_VAR:contentFile%. As explained earlier, each chosen action will result in a parser variable called contentFile. This parser variable will contain the name of the template matching the action. The command INCLUDE_VAR will simply insert this file into the framework.html file.

listSimilarKbEntries.html

This template is used to list similar FAQ entries when using the wiki functionality of the FAQ.

The FAQ entry hits are placed in the following parser variables. This is an array, so you must use %ROWSTART% and %ROWEND% to loop over them.

VariableDescription
kbEntry.urlThe URL to the FAQ entry in HTML format (so no need to add the tag), with the correct name
kbEntry.urlTargetThe URL to the FAQ entry
kbEntry.urlTitleThe name for the URL

In addition, the following parser variables are available:

VariableDescription
numEntriesThe number of entries found
originalEntryThe name of the original wiki link that was clicked

listTicket.html

This template is used to display one single request.

  • Message, but not that this will be an array, so you need to use %ROWSTART% and %ROWEND% to loop over them.
  • Message where is the number of the message starting from 0. This makes each message accessible as a single parser object.
  • Company
  • Customer
  • Ticket
VariableDescription
message.attachmentsAltAn array containing complete HTML code for displaying all attachments for a single message. That means that each element in the array contains all the attachments for this message. The attachment will be displayed in a new window if clicked.
message.attachmentsThe same as the above, except that the attachment will be opened in the same window.

listTickets.html

This template is used to list all the requests that the customer has access to.

  • Ticket

In addition, the following parser variables are available:

VariableDescription
pageNumbersAn array that The number of each page. This is convenient to use in conjunction with %ROWSTART%%ROWEND% to print the page selector.
nextPageindicates that there is a next page. If this parser variable is missing, there is no next page. The value of the variable is true when there is a next page
prevPageThe same as above, but in the opposite direction
directionThe sort order. When clicking a column header you can sort on this column. Clicking again will reverse the order. Will contain “asc” or “desc” depending on the direction, or empty if no direction is selected. See also orderBy below.
searchTextThe text searched for. Will be empty if no search has been done.
filterByThe filtering value. It is possible to reduce the request shown by filtering them. This should be set in the URL for this page, and the parser variable filterBy will contain this value so you can use them in other URLs. Possible values: “open”, “own” and “closed”.
orderByThe ORDERBY clauses used, so you can preserve the order in other URLs. The value should be set in the URL to make the customer care center use the order for the request list. The field should be separated with a comma. Possible values: “status”, “id”, “title”, “created”, “category”, “priority”. At the end of the list, you should append the direction.
pageLengthThe number of requests on each page. This should be set in the URL, and the parser variable will contain the chosen length.
numPagesThe total number of pages.
currentPageThe number of the current page
numTicketsThe total number of requests.

welcome.html

This template The welcome message that is displayed when a customer logs in. The following parser variables are available:

  • Company
  • Customer

loggedOut.html

This template The message that is displayed when a customer logs out. The following parser variables are available:

  • Company
  • Customer

login.html

This template The login screen. The following parser variables are available:

“username” The value entered in the username field.

newTicket.html

This template The new request screen. The following parser variables are available:

  • Company
  • Customer
VariableDescription
categoryThe HTML code to display the external categories in one single list (flattened)
category.bodyThe HTML code to display the external categories in a hierarchy
category.externalNameThe names of the external categories (array)
category.nameThe internal names of the external categories (array)
category.idThe ID of the external categories (array)
category.parentIdThe parent ID of the external categories (array)
category.selectedContains “selected” for those elements in the category array that are selected
custPhoneThe value of the customer phone field (if existing)
titleThe value of the title/subject field
custEmailThe value of the customer email field. Normally only displayed when not authorized
custNameThe value of the customer name field. Normally only displayed when not authorized
mailCcThe value of the CC field (if existing)
attachmentsThe ID of the attachments

noAccess.html

This template is displayed if trying to access a screen that the customer does not have access to (for example trying to view a request that he/she does not own).

The following parser variables are available:

  • Company
  • Customer

passwordSent.html

This template is displayed after submitting the email address in the “forgotten password” screen. No other than the standard variables are available.

registerCust.html

This template is displayed when a customer is trying to register. The following parser variables are available:

VariableDescription
cellphoneThe value of the cell phone field
phoneThe value of the phone field
passwordThe value of the password field
password2The value of the repeat password field
emailThe value of the email field
firstnameThe value of the first name field
lastnameThe value of the last name field

sendPassword.html

This template is displayed when the customer has clicked the Forgotten password button. No other than the standard variables are available.

ticketPosted.html

This template is displayed when a customer has posted a new request. The following parser variables are available:

  • Company (if authenticated)
  • Customer (if authenticated)
VariableDescription
category.externalNameThe names of the external categories (array)
category.nameThe internal names of the external categories (array)
category.idThe ID of the external categories (array)
category.parentIdThe parent ID of the external categories (array)
category.selectedContains “selected” for those elements in the category array that are selected
ticket.idThe ID of the new request
messageThe message text of the new request

viewKbCategory.html

This template is displayed when viewing a FAQ category. The following parser variables are available:

  • Company (if authenticated)
  • Customer (if authenticated)
VariableDescription
entry.answerPlainBrAll answer sections for entries in the current category. All newlines will be replaced by the tag. All URLs will be made clickable and opened in a new window (array).
entry.answerPlainThe same as above except that newlines will not be modified.
entry.answerThe same as above except that URLs will not automatically be made clickable.
entry.scoreThe score given to the entry (array).
entry.questionHtmlThe question part (array)
entry.questionParsedThe same as above, except that the question is run through the parser
entry.questionThe same as entry.questionHtml, except that newlines and tabs are removed, and the lines are chopped at 70 characters length. In addition, the question is checked with the legal HTML tags configured in the system (other tags will be removed).
entry.linkThe link to the entry (array)
entry.nameThe name of the entry (array)
entry.idThe ID of the entry (array)
category.descriptionThe description of the next level of sub-categories (array)
category.nameThe name of the next level of sub-categories (array)
category.idThe ID of the next level of sub-categories (array)
depthIndicates which category depth you are on, where the top category is 0
categoryIdThe ID of the current category

viewKkEntry.html

This template is displayed when viewing a FAQ entry. The following parser variables are available:

  • Company (if authenticated)
  • Customer (if authenticated)
VariableDescription
noHitsSet to 1 if this entry does not contain any links or attachments
entry.scoreThe score given to the entry
entry.questionThe question part of the entry
entry.questionParsedA parsed version of the entry. This is only available if the system is configured to allow parsing of a FAQ. This is controlled in the Registry table by setting “value” to 0 where reg_id= 64.
entry.answerThe answer part of the entry
entry.answerPlainThe answer part of the entry, where all URLs are made clickable
entry.answerPlainBrThe same as above, except that all newlines will be converted to the HTML tag
entry.answerParsedA parsed version of the entry. This is only available if the system is configured to allow parsing of the FAQ. This is controlled in the Registry table by setting “value” to 0 where reg_id= 64.
entry.titleThe title of the entry
entry.idThe ID of the entry
ticket.idThe ID of the request if the customer was redirected here using the auto FAQ suggestion on email filters. This is normally used to create a button that the customer can click to close the request.

viewKbSearch.html

This template is used to display entries and categories that match a search done by the customer. The following parser variables are available:

VariableDescription
searchStringThe text that the customer searched for
category.scoreA number between 0 and 100, indicating how good a match this is (array)
category.descriptionThe description of the category (array)
category.linkThe URL to the category (array)
category.nameThe name of the category (array)
category.idThe ID of the category (array)
entry.scoreA number between 0 and 100, indicating how good a match this is (array)
entry.questionThe question part of the entry (array)
entry.linkThe URL to the entry (array)
entry.nameThe name of the entry (array)
entry.idThe ID of the entry (array)

Welcome.html

This template is displayed when entering the Customer Care Center.

No other than the standard parser variables are available.