Advertisement
Guest User

Untitled

a guest
May 19th, 2016
407
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 104.47 KB | None | 0 0
  1. <?xml version='1.0' encoding='UTF-8' standalone='no' ?>
  2. <!DOCTYPE PrivateLabels SYSTEM "private.dtd" >
  3.  
  4. <PrivateLabels i18nPackage="org.opengts.db">
  5.  
  6. <!--
  7. =======================================================================================
  8. Project: OpenGTS - Open GPS Tracking System
  9. URL : http://www.opengts.org
  10. File : private.xml
  11. =======================================================================================
  12. Notes:
  13. - The data format of this XML file is subject to change.
  14. - A general tutorial on XML syntax can be found at "http://en.wikipedia.org/wiki/Xml"
  15. - Value substitution variables are now in use in some values defined in this file.
  16. They appear in the form "${Variable=defaultValue}", where "Variable" is a runtime
  17. variable defined in one of the runtime property files ("default.conf","webapp.conf",
  18. or "common.conf", etc), and "defaultValue" is the value to use for the substitution
  19. if the named "Variable" is not found in the loaded runtime configuration files.
  20. In all cases where you find "${Variable=defaultValue}", you can replace this sequence
  21. with your own customized value "myValue". For instance, the "locale" attribute
  22. on the "Domain" tag currently specifies the following:
  23. locale="en"
  24. If you wanted to set the current locale to Spanish, you replace this value with
  25. locale="es"
  26. - For "Property" tag specifications (parent tags "Properties", "MapProvider", and
  27. "ReverseGeocodeProvider"), the key/value may be overidden in the 'config.conf' file.
  28. The parent for the specified "Property" tag will contain an attribute "rtPropPrefix"
  29. The value of this attribute indicates the property key prefix that can be used to
  30. identify a specific property override in the 'config.conf' file. For instance,
  31. the following property specification exists below:
  32. <Properties rtPropPrefix="Domain.Properties.">
  33. ...
  34. <Property key="topMenu.showMenuHelp">true</Property>
  35. ...
  36. </Properties>
  37. This means that the property value can be overidden in a 'config.conf' as follows:
  38. Domain.Properties.topMenu.showMenuHelp=false
  39. =======================================================================================
  40. Change History:
  41. 2008/02/07 Martin D. Flynn
  42. -Added 'i18n' attributes to displayable text to allow Localization.
  43. 2008/02/21 Martin D. Flynn
  44. -Under the 'Domain' tag, replaced 'dateFormat' attribute with 'DateFormat' tag.
  45. -Under the 'Domain' tag, replaced 'timeFormat' attribute with 'TimeFormat' tag.
  46. -Added a few Europian timezones.
  47. 2008/04/11 Martin D. Flynn
  48. -Modified MapProvider to allow specifying property key/values in separate tags.
  49. 2008/05/14 Martin D. Flynn
  50. -Modified ReverseGeocodeProvider to allow specifying property key/val in separate tags.
  51. -Added parent 'EMailAddresses' tag to 'EMailAddress' tags.
  52. 2008/06/20 Martin D. Flynn
  53. -Added MapProvider section for Mapstraction support.
  54. 2008/07/08 Martin D. Flynn
  55. -Additional changes to mapping support (Mapstraction, OpenLayers, etc).
  56. 2008/07/21 Martin D. Flynn
  57. -The PageDecorations tag is now obsolete and has been removed from this 'private.xml'.
  58. Page decorations are now handled by the JSP file at "war/track/jsp/loginSession.jsp".
  59. -The attribute 'jsp' has been added to 'WebPages' and 'Pages' tags to allow specifying
  60. a JSP to control the page look-and-feel.
  61. 2008/07/27 Martin D. Flynn
  62. -Added 'Pushpins' tag section to parent 'MapProvider' tag.
  63. 2008/08/15 Martin D. Flynn
  64. -Added Acl tag 'maximum' (was 'access') and 'default' attirbutes.
  65. 2008/09/12 Martin D. Flynn
  66. -Added Domain properties "trackMap.showTimezoneSelection", "trackMap.showLastLocation"
  67. 2008/09/19 Martin D. Flynn
  68. -Added "map.view" property support to MapProvider properties.
  69. -Replaced property "trackMap.showLastLocation" with "trackMap.showUpdateLast".
  70. 2008/10/16 Martin D. Flynn
  71. -Simplified ACL usage (attribute "maximum" changed to "values", reduced number of ACLs).
  72. -Added additional Domain Properties
  73. 2008/12/01 Martin D. Flynn
  74. -Global Domain Property tags have now been placed in a "Properties" parent tag.
  75. 2009/01/01 Martin D. Flynn
  76. -Added Calendar property "calendar.firstDayOfWeek".
  77. 2009/02/01 Martin D. Flynn
  78. -Added "<I18N>" tag section.
  79. 2009/02/20 Martin D. Flynn
  80. -Various tag attribute and body-values may now have a value specification that resembles
  81. something like "${Domain.key=defaultValue}". This means that when the value for this
  82. attribute or tag body is evaluated, it will first attempt to obtain the value from
  83. the runtime property definition file (ie. default.conf, webapp.conf, or common.conf).
  84. If the specified key is not found in the runtime property files, then the value
  85. specified for 'default' will be returned.
  86. 2009/05/01 Martin D. Flynn
  87. -Added "StatusCodes" section for overriding the default status code descriptions.
  88. 2009/08/23 Martin D. Flynn
  89. -Added "Legend" and "IconSelector" tags to MapProvider
  90. 2009/09/23 Martin D. Flynn
  91. -Removed "${Domain....=}" variable substitution (to simplify configuration of open-source version)
  92. 2010/01/28 Martin D. Flynn
  93. -Move Pushpins to common global area
  94. 2010/10/13 Martin D. Flynn
  95. -Added SupportedLocales
  96. =======================================================================================
  97. -->
  98.  
  99. <!-- ==================================================================================== -->
  100. <!-- Supported Locales ================================================================= -->
  101. <!-- This list is used to populate the language selection pull-down menu on the login page.
  102. === To display the language selection pull-down menu on the login page, make sure that the
  103. === property "accountLogin.showLocaleSelection" is set to true.
  104. -->
  105. <SupportedLocales>
  106. <!-- Locale id="ar" i18n="PrivateXML.locale.arabic" >Arabic</Locale -->
  107. <Locale id="en" i18n="PrivateXML.locale.english" >English</Locale>
  108. <Locale id="fr" i18n="PrivateXML.locale.french" >French</Locale>
  109. <Locale id="de" i18n="PrivateXML.locale.german" >German</Locale>
  110. <Locale id="el" i18n="PrivateXML.locale.greek" >Greek</Locale>
  111. <Locale id="hu" i18n="PrivateXML.locale.hungarian" >Hungarian</Locale>
  112. <Locale id="it" i18n="PrivateXML.locale.italian" >Italian</Locale>
  113. <!-- Locale id="lo" i18n="PrivateXML.locale.lao" >Lao</Locale -->
  114. <Locale id="nl" i18n="PrivateXML.locale.dutch" >Dutch</Locale>
  115. <Locale id="pl" i18n="PrivateXML.locale.polish" >Polish</Locale>
  116. <Locale id="pt" i18n="PrivateXML.locale.portuguese">Portuguese</Locale>
  117. <Locale id="ro" i18n="PrivateXML.locale.romanian" >Romanian</Locale>
  118. <Locale id="ru" i18n="PrivateXML.locale.russian" >Russian</Locale>
  119. <Locale id="sk" i18n="PrivateXML.locale.slovak" >Slovak</Locale>
  120. <Locale id="sr" i18n="PrivateXML.locale.serbian" >Serbian</Locale>
  121. <Locale id="es" i18n="PrivateXML.locale.spanish" >Spanish</Locale>
  122. <Locale id="tr" i18n="PrivateXML.locale.turkish" >Turkish</Locale>
  123. </SupportedLocales>
  124.  
  125. <!-- TimeZones ========================================================================= -->
  126. <!-- References:
  127. ==== http://wwp.greenwichmeantime.com/info/timezone.htm
  128. ==== http://www.worldtimezone.com
  129. ==== A list of available timezones can be found in the file 'timezones.conf'
  130. ==== These TimeZones will be shared among all of the specified PrivateLabel Domains
  131. -->
  132. <TimeZones>
  133. US/Hawaii US/Alaska US/Pacific US/Arizona US/Mountain US/Central US/Eastern
  134. Canada/Pacific Canada/Mountain Canada/Central Canada/Eastern Canada/Atlantic
  135. Mexico/BajaNorte Mexico/BajaSur Mexico/General
  136. Europe/Athens Europe/Berlin Europe/Dublin Europe/Helsinki Europe/Kiev Europe/Lisbon
  137. Europe/London Europe/Madrid Europe/Moscow Europe/Oslo Europe/Paris Europe/Rome
  138. Europe/Stockholm Europe/Zurich
  139. GMT GMT+00:00
  140. GMT+01:00 GMT+02:00 GMT+03:00 GMT+04:00 GMT+05:00 GMT+05:30 GMT+06:00 GMT+06:30 GMT+07:00
  141. GMT+08:00 GMT+09:00 GMT+10:00 GMT+11:00 GMT+12:00 GMT+13:00 GMT+14:00
  142. GMT-01:00 GMT-02:00 GMT-03:00 GMT-04:00 GMT-05:00 GMT-06:00 GMT-07:00
  143. GMT-08:00 GMT-09:00 GMT-10:00 GMT-11:00 GMT-12:00
  144. </TimeZones>
  145.  
  146. <!-- ================================================================================= -->
  147. <!-- localhost ============================================================== -->
  148. <!--
  149. Notes:
  150. * Make sure you replace all occurances of "example.com" below with your own domain name.
  151. * The 'host' attribute on the 'Domain' tag specifies to which webserver domain name the 'Domain'
  152. definition refers. Specifying 'host="*"' indicates that this 'Domain' tag should be considered
  153. the default PrivateLabel Domain definition for all connections made to the server. You may create
  154. multiple 'Domain' definitions, each with their own set of attributes and features.
  155. * The OpenGTS system has the ability to bind Account records to a specific PrivateLabel domain
  156. (defined by a "Domain" tag below). This is done to provide specific access control to certain
  157. services such as mapping and reverse-geocoding. (ie. when a device connects to the server to send
  158. data, the PrivateLabel defined for the account is used to determine which reverse-geocoding service
  159. to use to create an address from the latitude/longitude). To bind an account record to a specific
  160. PrivateLabel 'Domain', set the 'privateLabelName' column in the specific account record to the
  161. specified 'name' of the Domain (ie. the value of the 'name' attribute). If an account record
  162. 'privateLabelName' has not been specified (ie. is blank), then the services defined in the default
  163. PrivateLabel will be used.
  164. * If no default PrivateLabel domain has been specified (ie. no 'Domain' tag exists with attribute
  165. 'host="*"'), then all Account records must have a valid 'privateLabelName' specified. Otherwise,
  166. no PrivateLabel domain can be associated with the account, and some services (reverse-geocoding,
  167. etc) may not be available.
  168. * To remove the "Demo" button from the login pages, specify 'demo="false"' below.
  169. * Supported languages now include:
  170. "de" (German)
  171. "el" (Greek)
  172. "en" (English)
  173. "es" (Spanish)
  174. "fr" (French)
  175. "hu" (Hungarian)
  176. "it" (Italian)
  177. "nl" (Netherlands/Dutch)
  178. "pl" (Polish)
  179. "pt" (Portuguese)
  180. "ro" (Romanian)
  181. "ru" (Russian)
  182. "sk" (Slovak)
  183. "sr" (Serbian)
  184. "tr" (Turkish)
  185. To change the locale to a different language, look for the locale="en" on the Domain tag below and
  186. replace "en" with the desired supported language code from the above list.
  187. -->
  188. <Domain
  189. name="${Domain.name=default}"
  190. host="${Domain.host=*}"
  191. allowLogin="${Domain.allowLogin=true}"
  192. accountLogin="${Domain.accountLogin=true}"
  193. userLogin="${Domain.userLogin=true}"
  194. emailLogin="${Domain.emailLogin=false}"
  195. showPassword="${Domain.showPassword=true}"
  196. restricted="${Domain.restricted=false}"
  197. demo="${Domain.demo=false}"
  198. locale="${Domain.locale=ru}">
  199.  
  200. <!-- Default Base URL -->
  201. <!-- - ->
  202. <BaseURL><![CDATA[http://localhost:8080/track/Track]]></BaseURL>
  203. <!- - -->
  204.  
  205. <!-- Alias hosts (specifies other alias domains) -->
  206. <Alias host="${Domain.Alias=localhost}"/> <!-- this should match the server host domain name -->
  207. <Alias host="${Domain.Alias.1=}"/>
  208. <Alias host="${Domain.Alias.2=}"/>
  209.  
  210. <!-- Default login account/user (when no AcountID/UserID is specified)
  211. === DefaultLoginAccount:
  212. === The default accout id will be used if the account id is left blank, or if the account login
  213. === field is not included on the login screen based on the Domain attribute 'accountLogin' value.
  214. === Default LoginUser:
  215. === "admin" is the default username and does not need to be explicitly specified. The "admin"
  216. === user need not exist as the default information from the 'Account' record will be used to
  217. === identify the 'admin' user (if the 'admin' user does exist, then it will override the user
  218. === identifying information in the Account record).
  219. === If the specified user is anything other than "admin", then the user MUST exist in the
  220. === User table otherwise login will always be denied when the user field is blank.
  221. === (Note: The 'defaultUser' column in the login "Account" table can override this value.)
  222. -->
  223. <DefaultLoginAccount>${Domain.DefaultLoginAccount=}</DefaultLoginAccount>
  224. <DefaultLoginUser>${Domain.DefaultLoginUser=admin}</DefaultLoginUser>
  225.  
  226. <!-- ========================================================================================== -->
  227.  
  228. <!-- "Domain" level I18N Strings
  229. === Specify localizable strings here which can be referenced elsewhere in this XML file, or in
  230. === the "loginSession.jsp" file referenced in the "WebPages" tag.
  231. === - These strings can be referenced within property and string values by surrounding the key
  232. === with ${...}, such as "${i18n.MyLocalizableText}".
  233. === - Like other Localizable text, these strings will appear the in the various
  234. === "LocalStrings_XX.properties" files.
  235. === - The <I18N> tag section must appear before the refererence to the specific string key
  236. === elsewhere in this XML file.
  237. -->
  238. <I18N>
  239. <!-- Legend -->
  240. <String key="i18n.PushPin_Legend" i18n="PrivateXML.legend.title" >Pushpin Legend</String>
  241. <String key="i18n.More_than_20mph" i18n="PrivateXML.legend.gt20mph" >More than %{mph:20}</String>
  242. <String key="i18n.More_than_15mph" i18n="PrivateXML.legend.gt15mph" >More than %{mph:15}</String>
  243. <String key="i18n.More_than_5mph" i18n="PrivateXML.legend.gt5mph" >More than %{mph:5}</String>
  244. <String key="i18n.Less_than_5mph" i18n="PrivateXML.legend.lt5mph" >Less than %{mph:5}</String>
  245. <String key="i18n.Last_Location" i18n="PrivateXML.legend.lastLocation" >Last Location</String>
  246. <String key="i18n.Page_Title" i18n="PrivateXML.pageTitle" >GPS Tracking</String>
  247. <!-- MenuGroup -->
  248. <String key="i18n.Last_Location_Map" i18n="PrivateXML.menugroup.maps.lastLocMap">Last Location Map</String>
  249. </I18N>
  250.  
  251. <!-- ========================================================================================== -->
  252.  
  253. <!-- Copyright used in html head 'meta' tag -->
  254. <Copyright>${Domain.Copyright=Copyright(C) 2007-2015 GeoTelematic Solutions, Inc.}</Copyright>
  255.  
  256. <!-- Title used in html head 'title' tag -->
  257. <PageTitle i18n="PrivateXML.pageTitle">${Domain.PageTitle=${ServiceAccount.Name=OpenGTS} GPS Tracking}</PageTitle>
  258.  
  259. <!-- Date/Time format (Note: These date/time format values are CASE SENSITIVE!!)
  260. === Formatting options:
  261. === yyyy - year
  262. === MM - month
  263. === dd - day
  264. === HH - 24 hour
  265. === hh - 12 hour
  266. === mm - minute
  267. === ss - second
  268. === aa - AM/PM
  269. === "DateFormat" below should be one of the following:
  270. === - yyyy/MM/dd
  271. === - MM/dd/yyyy
  272. === - dd/MM/yyyy
  273. -->
  274. <DateFormat>${Domain.DateFormat=yyyy/MM/dd}</DateFormat> <!-- see "java.text.SimpleDateFormat" -->
  275. <TimeFormat>${Domain.TimeFormat=HH:mm:ss}</TimeFormat> <!-- see "java.text.SimpleDateFormat" -->
  276.  
  277. <!-- EMail addresses -->
  278. <EMailAddresses domainName="${Domain.EMailAddresses.domainName=example.com}"> <!-- should match your own email domain name -->
  279. <EMailAddress>${Domain.EMailAddress=gpstracking@example.com}</EMailAddress> <!-- default email address -->
  280. <!-- <EMailAddress type="password">password</EMailAddress> --> <!-- "ReplyTo" for password requests -->
  281. <!-- <EMailAddress type="accounts">accounts</EMailAddress> --> <!-- "ReplyTo" for new accounts -->
  282. <!-- <EMailAddress type="support" >support</EMailAddress> --> <!-- General support -->
  283. <!-- <EMailAddress type="notify" >notify</EMailAddress> --> <!-- Event Notification -->
  284. </EMailAddresses>
  285.  
  286. <!-- ========================================================================================== -->
  287. <!-- Properties =============================================================================== -->
  288.  
  289. <!-- "Domain" level Properties -->
  290. <!-- internal property references must be immediately resolvable. IE. no forward references. -->
  291. <Properties rtPropPrefix="Domain.Properties.">
  292. <!-- the "rtPropPrefix" value above can be used to override these properties in one of the
  293. === runtime '.conf' files. The property name can be constructed by concatenating the prefix
  294. === value with the property name below. For instance:
  295. === Domain.Properties.trackMap.calendarAction=fixed
  296. -->
  297.  
  298. <!-- Default Enabled MapProvider -->
  299. <!--
  300. <Property key="MapProvider.active">googleMaps</Property>
  301. <Property key="zoneInfo.showShapeColor">true</Property>
  302. -->
  303.  
  304. <!-- Override HTMLTools "http.userAgent" (see RTKey.HTTP_USER_AGENT) -->
  305. <Property key="http.userAgent">GTS/${%version} [${session.locale=EN}] ${session.name=}</Property>
  306.  
  307. <!-- Track properties -->
  308. <Property key="track.validateIDs">true</Property> <!-- [true|false] validate all IDs (MUST BE TRUE) -->
  309. <Property key="track.enableAuthenticationService">false</Property> <!-- [true|false] enable "page=AUTHENTICATE" -->
  310. <Property key="track.forwardToSecureAccess">false</Property> <!-- [true|false] forward 'http' to 'https' -->
  311. <Property key="track.firstLoginPageID">menu.top</Property> <!-- [menu.top|map.device|map.fleet] first page after login -->
  312.  
  313. <!-- AccountLogin properties -->
  314. <Property key="accountLogin.showLoginLink">true</Property> <!-- [true|false] show "Login" link on login page -->
  315. <Property key="accountLogin.legacyLAF">false</Property> <!-- [true|false] show "Login" legacy look-and-feel -->
  316. <Property key="accountLogin.showLocaleSelection">false</Property> <!-- [true|false] (EXPERIMENTAL) show "Language" selection on login page -->
  317.  
  318. <!-- MenuBar properties -->
  319. <Property key="menuBar.openOnMouseOver">true</Property> <!-- [true|false] popup menu on mouseover -->
  320. <Property key="menuBar.includeTextAnchor">false</Property> <!-- [true|false] include text anchor tag (link) -->
  321.  
  322. <!-- TopMenu menu type -->
  323. <Property key="topMenu.menuType">expand</Property> <!-- [fixed|expand|button] menu type -->
  324. <!--
  325. === fixed : Fixed (non-expandable) text menu items
  326. === fixed-icon : Fixed text menu items with icon representation (set by "IconImage" tag)
  327. === expand : Expandable text menu items
  328. === expand-icon : Expandable icon menu items (set by "IconImage" tag)
  329. === button : "ButtonImage" button menu items (set by "ButtonImage" tag)
  330. === button-icon : "ButtonImage" button ("ButtonImage" tag), with icon ("IconImage" tag) overlay, menu items
  331. -->
  332.  
  333. <!-- TopMenu properties -->
  334. <Property key="topMenu.maximumIconsPerRow">9</Property> <!-- [#] (for 'menuType=icon') max icons per row -->
  335. <Property key="topMenu.showHeader">default</Property> <!-- [true|false|default] show header -->
  336. <Property key="topMenu.showMenuDescription">long</Property> <!-- [none|short|long] show menu description -->
  337. <Property key="topMenu.showMenuHelp">true</Property> <!-- [true|false] show menu help -->
  338.  
  339. <!-- TrackMap properties -->
  340. <Property key="trackMap.fleetDeviceEventCount">1</Property> <!-- [#] limit of points per device on "fleet" map -->
  341. <Property key="trackMap.showFleetMapDevicePushpin">default</Property> <!-- [default|true|false] display device pushpin on fleet map -->
  342. <Property key="trackMap.calendarAction">fade</Property> <!-- [fixed|fade|popup] calendar action -->
  343. <Property key="trackMap.calendarDateOnLoad">last</Property> <!-- [last|current] set calendar date OnLoad -->
  344. <Property key="trackMap.showTimezoneSelection">true</Property> <!-- [true|false] show timezone selection pulldown -->
  345. <Property key="trackMap.showPushpinReplay">true</Property> <!-- [true|false] show "Replay" button (device map only) -->
  346. <Property key="trackMap.showCursorLocation">true</Property> <!-- [true|false] show cursor location lat/lon -->
  347. <Property key="trackMap.showDistanceRuler">true</Property> <!-- [true|false] show distance ruler (if supported by map) -->
  348. <Property key="trackMap.showLegend">true</Property> <!-- [true|false] show legend -->
  349. <Property key="trackMap.mapUpdateOnLoad">all</Property> <!-- [all|last] Update Map -->
  350. <Property key="trackMap.autoUpdateRecenter">zoom</Property> <!-- [no|last|zoom] recenter map on auto-update -->
  351. <Property key="trackMap.detailCenterPushpin">false</Property> <!-- [true|false] center pushpin when selecting a detail row -->
  352. <Property key="trackMap.showLocationDetails">true</Property> <!-- [true|false] show "Location Details" report -->
  353. <Property key="trackMap.detailAscending">true</Property> <!-- [true|false] sort detail events in ascending/descending order -->
  354. <Property key="trackMap.showUpdateAll">true</Property> <!-- [true|false] show "Update All" location button -->
  355. <Property key="trackMap.showUpdateLast">false</Property> <!-- [true|false] show Update "Last" location button -->
  356. <Property key="trackMap.mapControlLocation">right</Property> <!-- [right|left] show controls to the left|right of the map -->
  357. <Property key="trackMap.mapControlCollapsible">true</Property> <!-- [true|false] show collapsible controls -->
  358. <Property key="trackMap.showLocateNow">false</Property> <!-- [true|false] show "Locate Now" button -->
  359. <Property key="trackMap.showGoogleKML">false</Property> <!-- [true|false|last] show "Google KML" link -->
  360. <Property key="trackMap.limitType">last</Property> <!-- [first|last] overflow limit type -->
  361. <Property key="trackMap.enableGeocode">false</Property> <!-- [true|false] (EXPERIMENTAL) show "Find Address" -->
  362. <Property key="trackMap.showDeviceLink">false</Property> <!-- [true|false] show Device Link (requires Device support) -->
  363. <Property key="trackMap.showBatteryLevel">false</Property> <!-- [false|icon|percent|default] show last Battery Level (requires Device support) -->
  364. <Property key="trackMap.useRouteDisplayColor">true</Property> <!-- [true|false] use Device 'displayColor' for route-line color -->
  365. <Property key="trackMap.showAllContainedGeozones">false</Property> <!-- [true|false] (EXPERIMENTAL) show all contained Geozones ('false' shows only 'inner' Geozone) -->
  366. <Property key="trackMap.lastDevicePushpin.fleet">true</Property> <!-- [true|false] show device pushpin for last pushpin on fleet map -->
  367. <Property key="trackMap.lastDevicePushpin.device">false</Property> <!-- [true|false] show device pushpin for last pushpin on device map -->
  368.  
  369. <!-- GoogleKML properties -->
  370. <Property key="googleKML.lastPushpinID">blue</Property> <!-- Color ID of the last event pushpin -->
  371.  
  372. <!-- ReportMenu properties -->
  373. <Property key="reportMenu.useMapDates">true</Property> <!-- [true|false] use 'Map' Calendar dates (else use private dates) -->
  374. <Property key="reportMenu.showTimezoneSelection">true</Property> <!-- [true|false] show timezone selection pulldown -->
  375. <Property key="reportMenu.enableReportEmail">false</Property> <!-- [true|false] enable 'EMail' format option for reports -->
  376. <Property key="reportMenu.customFormatURL"></Property> <!-- [URL] (EXPERIMENTAL) -->
  377.  
  378. <!-- ReportDisplay properties -->
  379. <Property key="reportDisplay.showGoogleKML">false</Property> <!-- [true|false] show "KML" link (supported reports only) -->
  380.  
  381. <!-- DeviceInfo properties -->
  382. <Property key="deviceInfo.allowEditServerID">false</Property> <!-- [true|false] Allow editing "Server ID" -->
  383. <Property key="deviceInfo.allowEditFirmwareVersion">false</Property> <!-- [true|false] Allow editing "Firmware Version" -->
  384. <Property key="deviceInfo.showNotificationFields">default</Property> <!-- [true|false|default] show notification fields -->
  385. <Property key="deviceInfo.showWorkOrderField">default</Property> <!-- [true|false|default] show WorkOrder ID field -->
  386. <Property key="deviceInfo.showPropertiesButton">false</Property> <!-- [true|false] show "Properties" button -->
  387. <Property key="deviceInfo.showSmsButton">false</Property> <!-- [true|false] show "SMS" button -->
  388. <Property key="deviceInfo.showFixedLocation">false</Property> <!-- [true|false] show Device 'fixed' location (required fixe loc fields) -->
  389. <Property key="deviceInfo.showNotes">false</Property> <!-- [true|false] show "Notes" field -->
  390. <Property key="deviceInfo.showExpectedAcks">false</Property> <!-- [true|false] show "Expect Ack" column -->
  391. <Property key="deviceInfo.showIgnitionIndex">false</Property> <!-- [true|false] show Ignition Index -->
  392. <Property key="deviceInfo.maximumIgnitionIndex">7</Property> <!-- [0..15] maximum Ignition Index -->
  393. <Property key="deviceInfo.showPushpinID">false</Property> <!-- [true|false] show Pushpin ID -->
  394. <Property key="deviceInfo.showPushpinChooser">true</Property> <!-- [true|false] show Pushpin Chooser -->
  395. <Property key="deviceInfo.showDisplayColor">true</Property> <!-- [true|false] show Display Color ("Route-Line") -->
  396. <Property key="deviceInfo.showDataKey">false</Property> <!-- [true|false] (EXPERIMENTAL) show Data Key -->
  397. <Property key="deviceInfo.allowNewDevice">true</Property> <!-- [true|false|sysadmin] allow new device creation -->
  398. <Property key="deviceInfo.allowDeleteDevice">true</Property> <!-- [true|false|sysadmin] allow delete device -->
  399. <Property key="deviceInfo.showFaultCodes">false</Property> <!-- [true|false] show last fault codes (requires Device/EventData table support) -->
  400. <Property key="deviceInfo.sms.useDeviceSMSCommands">true</Property> <!-- [true|false] Use Device "deviceCode" SMS commands -->
  401.  
  402. <!-- GroupInfo properties -->
  403. <Property key="groupInfo.showPropertiesButton">false</Property> <!-- [true|false] show "Properties" button -->
  404. <Property key="groupInfo.deviceListSortBy">desc</Property> <!-- [id|desc] sort device member list by -->
  405.  
  406. <!-- UserInfo properties -->
  407. <Property key="userInfo.showPreferredDeviceID">false</Property> <!-- [true|false|admin] show preferred device ID field -->
  408. <Property key="userInfo.showPassword">false</Property> <!-- [true|false] Show passwords on User admin -->
  409. <Property key="userInfo.authorizedGroupCount">0</Property> <!-- [Integer] (EXPERIMENTAL) Number of authorized group pull-downs to show -->
  410.  
  411. <!-- DriverInfo properties -->
  412. <Property key="driverInfo.showDeviceID">false</Property> <!-- [true|false] Show "Device ID" field -->
  413.  
  414. <!-- ZoneInfo properties -->
  415. <Property key="zoneInfo.mapControlLocation">right</Property> <!-- [right|left] show controls to the left|right of the map -->
  416. <Property key="zoneInfo.enableGeocode">false</Property> <!-- [true|false] (Experimental) show "Center on ZipCode" -->
  417. <Property key="zoneInfo.showOverlapPriority">false</Property> <!-- [true|false] show "Overlap Priority" pull-down -->
  418. <Property key="zoneInfo.showArriveDepartZone">true</Property> <!-- [true|false] show "Arrival/Departure Zone" checkbox -->
  419. <Property key="zoneInfo.showAutoNotify">false</Property> <!-- [true|false] show "Auto Notify" checkbox (also requires email setup) -->
  420. <Property key="zoneInfo.showClientUploadZone">false</Property> <!-- [true|false|id] show "Client Upload" checkbox/ID -->
  421. <Property key="zoneInfo.showShapeColor">true</Property> <!-- [true|false] show zone shape color -->
  422. <Property key="zoneInfo.showSpeedLimit">false</Property> <!-- [true|false] show speed limit -->
  423. <Property key="zoneInfo.maximumDisplayedVertices">-1</Property> <!-- [1..8] maximum number of point/vertices to display -->
  424.  
  425. <!-- StatusCodeInfo properties (module may not be present) -->
  426. <Property key="statusCodeInfo.showIconSelector">true</Property> <!-- [true|false] Show Icon 'Rule' Selector? -->
  427. <Property key="statusCodeInfo.showPushpinChooser">true</Property> <!-- [true|false] show Pushpin Chooser -->
  428.  
  429. <!-- SysAdminAccounts properties (module may not be present) -->
  430. <Property key="sysAdminAccounts.allowDeleteAccount">true</Property> <!-- [true|false] allow delete account -->
  431. <Property key="sysAdminAccounts.showPasswords">false</Property> <!-- [true|false] show passwords (possible security risk) -->
  432. <Property key="sysAdminAccounts.showAccountManager">false</Property> <!-- [true|false] show account manager, if supported -->
  433. <Property key="sysAdminAccounts.showNotes">false</Property> <!-- [true|false] show "Notes" -->
  434.  
  435. <!-- Account-Login properties (if available) -->
  436. <Property key="accountLogin.enableLogin">false</Property> <!-- [true|false] allow login to other accounts (possible security risk) -->
  437. <Property key="accountLogin.passcode">relogin</Property> <!-- [String] (EXPERIMENTAL) relogin passcode (possible security risk) -->
  438. <Property key="accountLogin.enableReturn">false</Property> <!-- [true|false] allow return to originator on logout -->
  439.  
  440. <!-- CorridorInfo properties (module may not be present) -->
  441. <Property key="corridorInfo.mapControlLocation">right</Property> <!-- [right|left] show controls to the left|right of the map -->
  442. <Property key="corridorInfo.showShapeColor">true</Property> <!-- [true|false|id] show corridor shape color -->
  443. <Property key="corridorInfo.enableGeocode">false</Property> <!-- [true|false] (Experimental) show "Center on ZipCode" -->
  444. <Property key="corridorInfo.pointCount">15</Property> <!-- [Integer] show number of corridor points -->
  445.  
  446. <!-- RuleInfo properties (module may not be present) -->
  447. <Property key="ruleInfo.showEMailWrapper">false</Property> <!-- [true|false] Show "Use EMail Wrapper" -->
  448. <Property key="ruleInfo.showSysAdminRules">yes</Property> <!-- [no|yes|only] SysAdmin rules only? -->
  449. <Property key="ruleInfo.showCronRules">true</Property> <!-- [no|yes|only] SysAdmin rules only? -->
  450. <Property key="ruleInfo.ruleTagList">hourly,daily,weekly</Property> <!-- [String,String,...] Displayed Rule Tags -->
  451. <Property key="ruleInfo.showPredefinedActions">false</Property> <!-- [true|false] Display predefined (canned) actions -->
  452.  
  453. <!-- SysAdminInfo properties (module may not be present) -->
  454. <Property key="sysAdminInfo.showEventsPerSecond">false</Property> <!-- [true|false] show Events-Per-Second -->
  455.  
  456. <!-- DeviceChooser properties -->
  457. <Property key="deviceChooser.sortBy">description</Property> <!-- [id|name|description] sort by -->
  458. <Property key="deviceChooser.useTable">true</Property> <!-- [true|false] use DeviceChooser table selection -->
  459. <Property key="deviceChooser.idPosition">last</Property> <!-- [none|first|last] ID column position -->
  460. <Property key="deviceChooser.search">false</Property> <!-- [true|false] enable description search -->
  461. <Property key="deviceChooser.matchContains">true</Property> <!-- [true|false] match on 'contains' (otherwise 'startsWith') -->
  462. <Property key="deviceChooser.singleItemTextField">false</Property> <!-- [true|false] text field for single selections (non-table only) -->
  463. <Property key="deviceChooser.includeListHtml">false</Property> <!-- [true|false] EXPERIMENTAL -->
  464. <Property key="deviceChooser.extraDebugEntries">0</Property> <!-- DEBUG TESTING PURPOSES ONLY! -->
  465.  
  466. <!-- Calendar properties -->
  467. <Property key="calendar.firstDayOfWeek">0</Property> <!-- [0=Sun,1=Mon,...6=Sat] calendar first day of week -->
  468. <Property key="calendar.timeTextField">true</Property> <!-- [true|false] allow entering hour:minute via a text field -->
  469.  
  470. <!-- DeviceAlerts properties (module may not be present) -->
  471. <Property key="deviceAlerts.refreshInterval">120</Property> <!-- [#sec] refresh interval in seconds -->
  472. <!-- <Property key="deviceAlerts.mapPageName">map.fleet</Property> --> <!-- [<pageName>] forwarded page name -->
  473. <!-- <Property key="deviceAlerts.mapPageName">map.device</Property> --> <!-- [<pageName>] forwarded page name -->
  474. <Property key="deviceAlerts.showAllDevices">false</Property> <!-- [true|false] show all devices (incl those without alerts) -->
  475. <Property key="deviceAlerts.maxActiveAlertAge">21600</Property> <!-- [#sec] maximum 'active' alert (21600 == 6 hrs)-->
  476.  
  477. <!-- Obsolete properties -->
  478. <!--
  479. <Property key="groupInfo.validateNewIDs">true</Property>
  480. <Property key="userInfo.validateNewIDs">true</Property>
  481. <Property key="driverInfo.validateNewIDs">true</Property>
  482. <Property key="zoneInfo.validateNewIDs">true</Property>
  483. <Property key="sysAdminAccounts.validateNewIDs">true</Property>
  484. <Property key="roleInfo.validateNewIDs">true</Property>
  485. <Property key="ruleInfo.validateNewIDs">true</Property>
  486. <Property key="deviceInfo.validateNewIDs">true</Property>
  487. -->
  488.  
  489. </Properties>
  490.  
  491. <!-- ========================================================================================== -->
  492. <!-- Default Pushpins =========================================================================
  493. === Pushpins creation options:
  494. === http://www.powerhut.co.uk/googlemaps/custom_markers.php
  495. -->
  496.  
  497. <!-- The "Pushpins" tag section allows overriding the pushpins displayed on the map.
  498. === These are the standard Google icons
  499. === IE. http://labs.google.com/ridefinder/images/mm_20_red.png
  500. -->
  501. <!--
  502. <Pushpins baseURL="http://labs.google.com/ridefinder/images/">
  503. <Pushpin key="black" icon="mm_20_black.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  504. <Pushpin key="brown" icon="mm_20_brown.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  505. <Pushpin key="red" icon="mm_20_red.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  506. <Pushpin key="orange" icon="mm_20_orange.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  507. <Pushpin key="yellow" icon="mm_20_yellow.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  508. <Pushpin key="green" icon="mm_20_green.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  509. <Pushpin key="blue" icon="mm_20_blue.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  510. <Pushpin key="purple" icon="mm_20_purple.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  511. <Pushpin key="gray" icon="mm_20_gray.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  512. <Pushpin key="white" icon="mm_20_white.png" shadow="mm_20_shadow.png" iconSize="12,20" iconOffset="6,20" shadowSize="22,20"/>
  513. </Pushpins>
  514. <!- - -->
  515.  
  516. <!-- The "Pushpins" tag section allows overriding the default pushpins displayed on the map. -->
  517. <!-- (these icons created using "Marker Maker") -->
  518. <Pushpins baseURL="images/pp/">
  519. <!-- override standard color pushpins -->
  520. <Pushpin key="black" icon="pin30_black.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  521. <Pushpin key="brown" icon="pin30_brown.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  522. <Pushpin key="red" icon="pin30_red.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  523. <Pushpin key="orange" icon="pin30_orange.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  524. <Pushpin key="yellow" icon="pin30_yellow.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  525. <Pushpin key="green" icon="pin30_green.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  526. <Pushpin key="blue" icon="pin30_blue.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  527. <Pushpin key="purple" icon="pin30_purple.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  528. <Pushpin key="gray" icon="pin30_gray.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  529. <Pushpin key="white" icon="pin30_white.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  530. <!-- other solid colors -->
  531. <Pushpin key="darkred" icon="pin30_darkred.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  532. <Pushpin key="darkgreen" icon="pin30_darkgreen.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  533. <Pushpin key="darkblue" icon="pin30_darkblue.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  534. <Pushpin key="darkpurple" icon="pin30_darkpurple.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  535. <Pushpin key="teal" icon="pin30_teal.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  536. <Pushpin key="salmon" icon="pin30_salmon.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  537. <Pushpin key="gold" icon="pin30_gold.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  538. <Pushpin key="pink" icon="pin30_pink.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  539. <Pushpin key="lime" icon="pin30_lime.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  540. <Pushpin key="bluegray" icon="pin30_bluegray.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  541. <Pushpin key="magenta" icon="pin30_magenta.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  542. <!-- some additional pushpins -->
  543. <Pushpin key="reddot" icon="pin30_red_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  544. <Pushpin key="greendot" icon="pin30_green_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  545. <Pushpin key="bluedot" icon="pin30_blue_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  546. </Pushpins>
  547.  
  548. <!-- Multiple 'Pushpins' tags may be specified -->
  549. <Pushpins baseURL="images/pp/">
  550. <!--
  551. === This example shows how a custom pushpin marker can be generated from within Javascript itself.
  552. === The Javascript function argument 'e' below, is a pointer to a 'MapEventRecord' object which
  553. === contains the following properties relative to the current event:
  554. === device : The Device ID
  555. === timestamp : The Epoch timestamp
  556. === date : The date (formatted per the Domain/Account specifications)
  557. === time : The time (formatted per the Domain/Account specifications)
  558. === code : The StatusCode description
  559. === iconNdx : The icon index
  560. === latitude : The Latitude
  561. === longitude : The Longitude
  562. === speedKPH : The speed in km/h
  563. === speedMPH : The speed in mph
  564. === heading : The heading (in drgrees)
  565. === compass : The compas heading (N,NE,E,SE,S,SW,W,NW)
  566. === altitude : The altitude in meters
  567. === address : The street address (may be blank if address is not available)
  568. === =======================
  569. === The example Javascript functions 'evHeadingYellowURL', 'evHeadingGreenURL', and 'evHeadingMarkerURL',
  570. === can be found in the 'jsmap.js' file and analyzes the event 'heading' and returns a URL reference that
  571. === indicates the direction of travel.
  572. === =======================
  573. === The Pushpin keys "all", "fleet", "stop", "slow", "moving", "last" below are used by the default icon
  574. === selector "<EventData>.getDefaultMapIconIndex(...)" to select a pushpin icon for the map.
  575. -->
  576. <!-- If uncommented, the "all" key will control ALL icon selections for the map - ->
  577. <Pushpin key="all" eval="evHeadingMarkerURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_green_h1.png"/>
  578. <!- - -->
  579. <Pushpin key="fleet" icon="pin30_blue_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  580. <Pushpin key="stop" icon="pin30_red_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  581. <Pushpin key="slow" eval="evHeadingYellowURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_yellow_h1.png"/>
  582. <Pushpin key="moving" eval="evHeadingGreenURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_green_h1.png"/>
  583. <!-- If uncommented, the "last" key will control the icon selected for the last pushpin on the map within the date range - ->
  584. <Pushpin key="last" icon="pin30_blue_dot.png" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30"/>
  585. <!- - -->
  586. </Pushpins>
  587. <Pushpins baseURL="images/pp/">
  588. <Pushpin key="greenh" eval="evHeadingGreenURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_green_h1.png"/>
  589. <Pushpin key="yellowh" eval="evHeadingYellowURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_yellow_h1.png"/>
  590. <Pushpin key="heading" eval="evHeadingMarkerURL(e)" shadow="pin30_shadow.png" iconSize="18,30" iconOffset="9,30" shadowSize="30,30" image="pin30_green_h1.png"/>
  591. </Pushpins>
  592.  
  593. <!-- Text Label pushpin -->
  594. <Pushpins baseURL="">
  595. <!--
  596. === - This uses image "label47_fill.png" and calls back to 'Track.java' (see PAGE_MARKER)
  597. === to write the device short name into the png image. "label47_fill.png" can handle
  598. === text up to 6 or 7 characters long (using 9pt font).
  599. === - To use this feature, edit the Device information (using the Device Admin page), add
  600. === a 'Short Name', and select "label" for the 'Group Pushpin ID'. The icon will show
  601. === on the fleet map with the embedded short-name text (if a short name has not been
  602. === entered, the DeviceID will be used).
  603. -->
  604. <Pushpin key="devlabel" eval="evDeviceNameIconURL(e)" iconSize="47,24" iconOffset="9,24" image="images/pp/label47_fill.png"/>
  605. <!-- "evDeviceNameIconURL" is defined in 'jsmap.js' -->
  606. </Pushpins>
  607.  
  608. <!-- ========================================================================================== -->
  609.  
  610. <Legend type="device" includeDefault="true">
  611. <Title>${i18n.PushPin_Legend}:</Title>
  612. <!-- If the text field contains any of the following key replacement vars, the value
  613. === will be replaced with the speed units of the current account:
  614. === %{kph:XX} : XX, specified in km/h, will be converted to the account speed units
  615. === %{mph:XX} : XX, specified in mph, will be converted to the account speed units
  616. === IE. "%{mph:20}" is replaced with "32 km/h" if the current account speed units is km/h
  617. -->
  618. <Icon name="greendot" scale="0.7">${i18n.More_than_20mph}</Icon>
  619. <Icon name="yellow" scale="0.7">${i18n.More_than_5mph}</Icon>
  620. <Icon name="stop" scale="0.7">${i18n.Less_than_5mph}</Icon>
  621. </Legend>
  622.  
  623. <Legend type="fleet" includeDefault="true">
  624. <Title>${i18n.PushPin_Legend}:</Title>
  625. <Icon name="bluedot" scale="0.7">${i18n.Last_Location}</Icon>
  626. </Legend>
  627.  
  628. <!-- ========================================================================================== -->
  629.  
  630. <!-- MapProvider notes:
  631. === - All MapProvider classes listed here must implement "org.opengts.war.tools.MapProvider"
  632. === - Only the first "active" MapProvider will be used.
  633. === - Remove the XML comment characters from around any Property you wish to change.
  634. === Most map providers should support the following properties:
  635. === <Property key="javascript.src"><![CDATA[
  636. === http://js.example.com/js/MyCustomJavaScript.js
  637. === ]]></Property> - include additional Javascript
  638. === <Property key="zone.map.width">630</Property> - Geozone map width
  639. === <Property key="zone.map.height">530</Property> - Geozone map height
  640. === <Property key="map.width">680</Property> - width of the map in pixels
  641. === <Property key="map.height">470</Property> - height of the map in pixels
  642. === <Property key="map.maxPushpins">500</Property> - maximum number of displayed pushpins
  643. === <Property key="map.maxPushpins.device">500</Property> - maximum number of displayed pushpins for device map only
  644. === <Property key="map.maxPushpins.fleet">500</Property> - maximum number of displayed pushpins for fleet map only
  645. === <Property key="map.maxPushpins.report">500</Property> - maximum number of displayed pushpins for report map only
  646. === <Property key="map.routeLine">true</Property> - include travel route line
  647. === <Property key="map.routeLine.color">#FF2222</Property> - include travel route line color
  648. === <Property key="map.routeLine.arrows">false</Property> - include travel route line (GoogleMaps only - blue)
  649. === <Property key="map.minProximity">0.0</Property> - minimum meters between adjacent events
  650. === <Property key="default.zoom">4</Property> - default zoom when no pushpins are displayed
  651. === <Property key="default.lat">39.0000</Property> - default latitude when no pushpins are displayed
  652. === <Property key="default.lon">-100.0000</Property> - default longitude when no pushpins are displayed
  653. === <Property key="auto.enable">true</Property> - enable/disable auto-update
  654. === <Property key="auto.interval">30</Property> - auto-update interval (in seconds)
  655. === <Property key="auto.count">10</Property> - maximum number of auto-updates
  656. === <Property key="auto.skipRadius">15</Property> - skip nearby points radius (meters) [OpenLayers/Google only]
  657. === Most map providers will support the following properties (but possible not all):
  658. === <Property key="replay.enable">true</Property> - enable/disable replay
  659. === <Property key="replay.interval">1700</Property> - milliseconds replay interval (values < 30 are interpreted as seconds)
  660. === <Property key="replay.singlePushpin">false</Property> - show only single pushpin during replay
  661. -->
  662.  
  663. <!-- =============================================
  664. === OpenLayers [http://www.openlayers.org] using OpenStreetMaps [http://www.openstreetmap.org]
  665. -->
  666. <MapProvider name="openLayers"
  667. active="${Domain.MapProvider.active=true}"
  668. class="org.opengts.war.maps.jsmap.OpenLayers"
  669. rtPropPrefix="Domain.MapProvider.">
  670.  
  671. <!-- override location of OpenLayers client-side JavaScript
  672. === If you wish to keep your own local cache of the OpenLayers.js JavaScript
  673. === Copy the OpenLayers.js module to a local server, then change this link
  674. === to point to your local cached version.
  675. -->
  676. <!-- Property key="openlayers.js">./js/openlayers/OpenLayers.js</Property -->
  677. <Property key="openlayers.js">http://openlayers.org/api/OpenLayers.js</Property>
  678.  
  679. <!-- MapQuest layers -->
  680. <Property key="mapQuest.enableLayer.osm">false</Property> <!-- show MapQuest OSM map layer -->
  681. <Property key="mapQuest.enableLayer.arial">false</Property> <!-- show MapQuest Arial map layer -->
  682.  
  683. <!-- miscellaneous -->
  684. <Property key="map.fillFrame">false</Property> <!-- expand map to fill page frame -->
  685. <!-- <Property key="map.width">-1</Property> -->
  686. <!-- <Property key="map.height">-1</Property> -->
  687. <Property key="info.showAltitude">true</Property> <!-- show altitude in info-balloon -->
  688. <Property key="info.showSpeed">true</Property> <!-- show speed in info-balloon -->
  689. <Property key="jsmap.showMapLoading">true</Property> <!-- show "Loading Map Points" when loading data -->
  690. <!-- <Property key="jsmap.showMapLoading.image">./images/MapLoading.gif</Property> -->
  691. <Property key="details.combineSpeedHeading">false</Property> <!-- combine speed/heading into single column -->
  692.  
  693. <!-- default zoom/location -->
  694. <Property key="default.zoom">4</Property> <!-- default zoom when no pushpins are displayed -->
  695. <Property key="default.lat">39.0000</Property> <!-- default latitude when no pushpins are displayed -->
  696. <Property key="default.lon">-96.5000</Property> <!-- default longitude when no pushpins are displayed -->
  697.  
  698. <!-- Geozone map size/config -->
  699. <!-- <Property key="zone.map.width">630</Property> -->
  700. <!-- <Property key="zone.map.height">540</Property> -->
  701. <Property key="zone.map.multipoint">false</Property> <!-- [true|false] false==1 point, true=6 points -->
  702. <Property key="zone.map.polygon">true</Property> <!-- [true|false] display polygon option -->
  703. <Property key="zone.map.corridor">false</Property> <!-- [true|false] display corridor option (not supported) -->
  704.  
  705. <!-- include target geozones on map (a pushpin must be in the Geozone for it to be displayed) -->
  706. <Property key="map.includeGeozones">false</Property>
  707.  
  708. <!-- route line -->
  709. <Property key="map.routeLine">true</Property> <!-- include travel route line -->
  710. <Property key="map.routeLine.color">#FF2222</Property> <!-- include travel route line color -->
  711. <Property key="map.routeLine.arrows">false</Property> <!-- NOT SUPPORTED -->
  712.  
  713. <!-- replay -->
  714. <Property key="replay.enable">true</Property> <!-- enable/disable replay -->
  715. <Property key="replay.interval">1200</Property> <!-- replay interval (in milliseconds, values < 30 are interpreted as seconds) -->
  716. <Property key="replay.singlePushpin">false</Property> <!-- show only single pushpin during replay -->
  717.  
  718. <!-- enable auto-update -->
  719. <Property key="auto.enable">true</Property> <!-- enable/disable auto-update -->
  720. <Property key="auto.interval">20</Property> <!-- auto-update interval (in seconds) -->
  721. <Property key="auto.count">10</Property> <!-- maximum number of auto-updates -->
  722. <Property key="auto.skipRadius">10</Property> <!-- skip nearby points radius (meters) -->
  723.  
  724. <!-- use default pushpins -->
  725. <Pushpins includeDefault="true"/>
  726.  
  727. <!-- legend -->
  728. <Legend type="device" includeDefault="true"/>
  729. <Legend type="fleet" includeDefault="true"/>
  730.  
  731. <!--
  732. === The IconSelector tag provdes an ability to select what icon to display for specific types of
  733. === events. An enabled "RuleFactory" implementation is required to evaluate the icon selector value.
  734. === The "RuleFactory" 'interface' may be viewed in the source module "org.opengts.db.RuleFactory.java", from
  735. === which an 'implementation' will need to be created and installed into "Device.setRuleFactory(ruleFactory)".
  736. ===
  737. === A commercial "RuleFactory" implementation is available which can evaluate 'selectors' like the following:
  738. === - ((mph<5.0)?"red":(mph<20.0)?"yellow":(mph<=65.0)?"green":"arrow")
  739. === If the vehicle speed is < 5mph, display the RED pushpin, else if < 20mph, display the YELLOW pushpin,
  740. === else if <= 65mph, display the GREEN pushpin, otherwise display the "arrow" icon (when over 65mph).
  741. === - ($INZONE?"white":(mph<5.0)?"red":"green")
  742. === If in any defined GeoZone, display the WHITE pushpin, else if < 5mph, display the RED pushpin,
  743. === otherwise display the GREEN pushpin.
  744. === - (($DORMANT>=3600)?"red":"green")
  745. === If vehicle has not moved for 3600 seconds, display the RED pushpin, otherwise display the GREEN pushpin.
  746. === - (($WEEKDAY&&!$INZONE("home"))?"red":"green")
  747. === If it is a weekday and the vehicle is outside defined GeoZone "home", display the RED pushpin,
  748. === otherwise display the GREEN pushpin.
  749. === - ($BIT(input,1)?"purple":"white")
  750. === If digital input 1 is 'ON' ('input' is a bitmask, and '1' represents the second bit), display
  751. === the PURPLE pushpin, otherwise display the WHITE pushpin.
  752. === This RuleFactory can also be used to analyze incoming events and send notification, such as an email,
  753. === when installed as an Event analysis rule. Rule functions, such as $ARRIVE, $DEPART, etc, are available
  754. === for this purpose. For more information, please contact us for details.
  755. ===
  756. === The default icon selector (when no RuleFactory is available, or the 'iconSelector' has not been
  757. === specified) is implemented in Java, and is equivalent to the following:
  758. === - ($DIN?"orange":(speed<8)?"red":(speed<32)?"yellow":"green")
  759. === If the StatusCode is any digital input, display the ORANGE pushpin, else if the speed is less
  760. === than 8 km/h, display the RED pushpin, else if the speed is less than 32 km/h, display the
  761. === YELLOW pushpin, otherwise display the GREEN pushpin".
  762. === This default 'selector' is implemented in the method "getDefaultMapIconIndex(...)" in the EventData class.
  763. === -->
  764. <!-- example icon selectors below (a valid 'RuleFactory' implementaion/installation required):
  765. <IconSelector type="device" ruleFactoryName="GTSRulesEngine,SecureENRE,ENRE"><![CDATA[
  766. ((mph<5.0)?"red":(mph<20.0)?"yellow":(mph<70.0)?"green":"greendot")
  767. ]]></IconSelector>
  768. <IconSelector type="fleet" ruleFactoryName="GTSRulesEngine,SecureENRE,ENRE"><![CDATA[
  769. (isLast?$DEVICON("bluedot"):(mph<5)?"stop":(mph<20)?"yellowh":"greenh")
  770. ]]></IconSelector>
  771. -->
  772.  
  773. </MapProvider>
  774.  
  775. <!-- =============================================
  776. === OpenLayers [http://www.openlayers.org] using GeoServer
  777. -->
  778. <MapProvider name="geoServer"
  779. active="${Domain.MapProvider.active=false}"
  780. class="org.opengts.war.maps.jsmap.OpenLayers"
  781. rtPropPrefix="Domain.MapProvider.">
  782. <Property key="map.fillFrame">false</Property> <!-- expand map to fill page frame -->
  783. <Property key="geoServer.enable">true</Property> <!-- must be "true" for GeoServer support -->
  784. <Property key="default.zoom">4</Property> <!-- default zoom when no pushpins are displayed -->
  785. <Property key="default.lat">40.7000</Property> <!-- default latitude when no pushpins are displayed -->
  786. <Property key="default.lon">-74.5000</Property> <!-- default longitude when no pushpins are displayed -->
  787.  
  788. <!-- GeoServer vars:
  789. === Set these values to match your GeoServer mapping service
  790. === (The JavaScript module "war/track/js/maps/OpenLayers.js" may also need some customization to support your map files)
  791. -->
  792. <Property key="geoServer.url">http://localhost:8085/geoserver/wms</Property> <!-- point this to your GeoServer service -->
  793. <Property key="geoServer.maxResolution">0.0007907421875</Property> <!-- Maximum resolution -->
  794. <Property key="geoServer.size">{ width:431, height:550 }</Property> <!-- Image width/height -->
  795. <Property key="geoServer.projection">EPSG:4326</Property> <!-- Projection -->
  796. <Property key="geoServer.layers">tiger-ny</Property> <!-- Map dataset -->
  797. <Property key="geoServer.bounds">{ left:-74.047185, bottom:40.679648, right:-73.907005, top:40.882078 }</Property>
  798.  
  799. <!-- use default pushpins -->
  800. <Pushpins includeDefault="true"/>
  801.  
  802. <!-- legend -->
  803. <Legend type="device" includeDefault="true"/>
  804. <Legend type="fleet" includeDefault="true"/>
  805.  
  806. </MapProvider>
  807.  
  808. <!-- =============================================
  809. === Microsoft Virtual Earth [http://dev.live.com]
  810. === Note: When using the Microsoft Virtual Earth mapping service, it is your responsibility
  811. === to make sure you comply with all of the Microsoft terms of use for this service.
  812. === Microsoft Virtual Earth Service API Terms of Use:
  813. === http://www.microsoft.com/maps/product/licensing_for_nonprofit.aspx
  814. === http://www.microsoft.com/maps/product/terms.html
  815. === Microsoft Windows Live Terms of Use:
  816. === http://tou.live.com/
  817. === Microsoft Online Privacy Statement:
  818. === http://privacy.microsoft.com/
  819. -->
  820. <MapProvider name="virtualEarth"
  821. active="${Domain.MapProvider.active=false}"
  822. class="org.opengts.war.maps.jsmap.VirtualEarth"
  823. rtPropPrefix="Domain.MapProvider.">
  824. <Property key="map.fillFrame">false</Property> <!-- expand map to fill page frame -->
  825. <!-- <Property key="map.width">-1</Property> -->
  826. <!-- <Property key="map.height">-1</Property> -->
  827. <!-- <Property key="scrollWheelZoom">false</Property> --> <!-- enable/disable scroll wheel zoom -->
  828. <!-- <Property key="map.maxPushpins">10</Property> -->
  829. <Property key="map.view">road</Property> <!-- [road|aerial|hybrid] map view/style -->
  830. <Property key="info.showAltitude">false</Property> <!-- show altitude in info balloon -->
  831. <Property key="info.showSpeed">true</Property> <!-- show speed in info-balloon -->
  832. <Property key="jsmap.showMapLoading">true</Property>
  833. <Property key="details.combineSpeedHeading">false</Property> <!-- combine speed/heading into single column -->
  834. <!-- <Property key="ve.mapcontrol">http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1</Property> -->
  835. <!-- <Property key="jsmap.showMapLoading.image">./images/MapLoading.gif</Property> -->
  836.  
  837. <!-- default zoom/location -->
  838. <Property key="pushpin.zoom">14</Property> <!-- default zoom when pushpins are displayed -->
  839. <Property key="default.zoom">4</Property> <!-- default zoom when no pushpins are displayed -->
  840. <Property key="default.lat">39.0000</Property> <!-- default latitude when no pushpins are displayed -->
  841. <Property key="default.lon">-96.5000</Property> <!-- default longitude when no pushpins are displayed -->
  842.  
  843. <!-- Geozone map size/config -->
  844. <Property key="zone.map.width">630</Property>
  845. <Property key="zone.map.height">540</Property>
  846. <Property key="zone.map.multipoint">false</Property> <!-- [true|false] false==1 point, true=6 points -->
  847. <Property key="zone.map.polygon">true</Property> <!-- [true|false] display polygon option -->
  848. <Property key="zone.map.corridor">false</Property> <!-- [true|false] display corridor option (not supported) -->
  849.  
  850. <!-- include target geozones on map (a pushpin must be in the Geozone for it to be displayed) -->
  851. <Property key="map.includeGeozones">false</Property>
  852.  
  853. <!-- route line -->
  854. <Property key="map.routeLine">true</Property> <!-- include travel route line -->
  855. <Property key="map.routeLine.color">#FF2222</Property> <!-- include travel route line color -->
  856. <Property key="map.routeLine.arrows">false</Property> <!-- NOT SUPPORTED -->
  857.  
  858. <!-- replay -->
  859. <Property key="replay.enable">true</Property> <!-- enable/disable replay -->
  860. <Property key="replay.interval">1200</Property> <!-- replay interval (in milliseconds) -->
  861. <Property key="replay.singlePushpin">false</Property> <!-- show only single pushpin during replay -->
  862.  
  863. <!-- auto update -->
  864. <Property key="auto.enable">false</Property> <!-- enable/disable auto-update -->
  865. <Property key="auto.interval">30</Property> <!-- auto-update interval (in seconds) -->
  866. <Property key="auto.count">10</Property> <!-- maximum number of auto-updates -->
  867.  
  868. <!-- use default pushpins -->
  869. <Pushpins includeDefault="true"/>
  870.  
  871. <!-- legend -->
  872. <Legend type="device" includeDefault="true"/>
  873. <Legend type="fleet" includeDefault="true"/>
  874.  
  875. </MapProvider>
  876.  
  877. <!-- =============================================
  878. === Mapstraction [http://www.mapstraction.com]
  879. -->
  880. <MapProvider name="mapstraction"
  881. active="${Domain.MapProvider.active=false}"
  882. class="org.opengts.war.maps.jsmap.Mapstraction"
  883. rtPropPrefix="Domain.MapProvider.">
  884. <!-- <Property key="map.width">680</Property> --> <!-- map width -->
  885. <!-- <Property key="map.height">470</Property> --> <!-- map width -->
  886. <Property key="provider">openlayers</Property> <!-- the Mapstraction map provider -->
  887. <Property key="localMapstractionJS">true</Property> <!-- true to load local 'mapstraction.js' -->
  888. <Property key="pushpin.zoom">9</Property> <!-- default zoom when pushpins are displayed -->
  889. <Property key="default.zoom">4</Property> <!-- default zoom when no pushpins are displayed -->
  890. <Property key="default.lat">39.0000</Property> <!-- default latitude when no pushpins are displayed -->
  891. <Property key="default.lon">-96.5000</Property> <!-- default longitude when no pushpins are displayed -->
  892. <Property key="auto.enable">false</Property> <!-- enable/disable auto-update -->
  893. <Property key="auto.interval">30</Property> <!-- auto-update interval (in seconds) -->
  894. <Property key="auto.count">10</Property> <!-- maximum number of auto-updates -->
  895.  
  896. <!-- use default pushpins -->
  897. <Pushpins includeDefault="true"/>
  898.  
  899. <!-- legend -->
  900. <Legend type="device" includeDefault="true"/>
  901. <Legend type="fleet" includeDefault="true"/>
  902.  
  903. </MapProvider>
  904.  
  905. <!-- =============================================
  906. === GoogleMaps
  907. === Google may require you to register for a key, check with the following link to see
  908. === about the Google map version availability and whether a registered key is required:
  909. === https://developers.google.com/maps/signup
  910. === Note: When using the Google Map mapping service, it is your responsibility to make
  911. === sure you comply with all of the Google terms of use for this service.
  912. === https://developers.google.com/maps/terms
  913. -->
  914. <MapProvider name="googleMaps"
  915. active="${Domain.MapProvider.active=false}"
  916. class="org.opengts.war.maps.jsmap.GoogleMaps"
  917. key="${Domain.MapProvider.key=***PLACE_AUTHORIZATION_KEY_HERE***}"
  918. rtPropPrefix="Domain.MapProvider.">
  919.  
  920. <!-- Google Maps configuration -->
  921. <!-- <Property key="google.mapcontrol">http://maps.google.com/maps?file=api&v=3&sensor=true&key=...</Property> -->
  922. <Property key="google.version">3</Property>
  923. <Property key="google.sensor">true</Property>
  924. <Property key="google.channel"></Property>
  925. <Property key="google.useSSL">false</Property>
  926. <Property key="google.addTrafficOverlay">false</Property>
  927. <Property key="google.addWeatherOverlay">false</Property>
  928. <Property key="google.addCloudOverlay">false</Property>
  929. <Property key="google.addPlacesSearch">false</Property>
  930. <Property key="google.addPlacesNearby">false</Property>
  931. <Property key="google.addOpenStreetMap">false</Property>
  932. <Property key="google.addBingMap">false</Property>
  933.  
  934. <Property key="map.view">road</Property> <!-- [road|aerial|hybrid] map view/style -->
  935. <Property key="map.fillFrame">false</Property>
  936. <Property key="scrollWheelZoom">false</Property> <!-- enable/disable scroll wheel zoom -->
  937. <!-- <Property key="map.width">680</Property> --> <!-- map width -->
  938. <!-- <Property key="map.height">470</Property> --> <!-- map width -->
  939.  
  940. <!-- default zoom/location -->
  941. <Property key="default.zoom">4</Property> <!-- default zoom when no pushpins are displayed -->
  942. <Property key="default.lat">39.0000</Property> <!-- default latitude when no pushpins are displayed -->
  943. <Property key="default.lon">-96.5000</Property> <!-- default longitude when no pushpins are displayed -->
  944.  
  945. <!-- Geozone map size/config -->
  946. <!-- <Property key="zone.map.width">630</Property> -->
  947. <!-- <Property key="zone.map.height">540</Property> -->
  948. <Property key="zone.map.multipoint">false</Property> <!-- [true|false] false==1 point, true=6 points -->
  949. <Property key="zone.map.polygon">true</Property> <!-- [true|false] display polygon option -->
  950. <Property key="zone.map.corridor">false</Property> <!-- [true|false] display corridor option (not supported) -->
  951.  
  952. <!-- include target geozones on map (a pushpin must be in the Geozone for it to be displayed) -->
  953. <Property key="map.includeGeozones">false</Property>
  954.  
  955. <!-- route line -->
  956. <Property key="map.routeLine">true</Property> <!-- include travel route line -->
  957. <Property key="map.routeLine.color">#FF2222</Property> <!-- include travel route line color -->
  958. <Property key="map.routeLine.arrows">false</Property> <!-- include travel route line arrows (GoogleMaps only - always blue) -->
  959.  
  960. <!-- replay -->
  961. <Property key="replay.enable">true</Property> <!-- enable/disable replay -->
  962. <Property key="replay.interval">1200</Property> <!-- replay interval (in milliseconds) -->
  963. <Property key="replay.singlePushpin">false</Property> <!-- show only single pushpin during replay -->
  964.  
  965. <!-- auto update -->
  966. <Property key="auto.enable">false</Property> <!-- enable/disable auto-update -->
  967. <Property key="auto.interval">20</Property> <!-- auto-update interval (in seconds) -->
  968. <Property key="auto.count">10</Property> <!-- maximum number of auto-updates -->
  969. <Property key="auto.skipRadius">10</Property> <!-- skip nearby points radius (meters) -->
  970.  
  971. <!-- use default pushpins -->
  972. <Pushpins includeDefault="true"/>
  973.  
  974. <!-- legend -->
  975. <Legend type="device" includeDefault="true"/>
  976. <Legend type="fleet" includeDefault="true"/>
  977.  
  978. </MapProvider>
  979.  
  980. <!-- ========================================================================================== -->
  981. <!-- ReverseGeocodeProvider
  982. === To enable reverse-geocoding, set the chosen ReverseGeocodeProvider 'active' attribute
  983. === to "true" and set the following Account column values for each account that is to
  984. === have reverse-geocoding enabled:
  985. === - Set 'geocoderMode' to either 2 (partial), or 3 (full).
  986. === - Set 'privateLabelName' to the 'name' or 'host' of this Domain (Edit the Account
  987. === record and change the 'name' of this Domain - "default" is the default name).
  988. === When an event arrives, these Account values are used to determine if, or how,
  989. === reverse-geocoding is to be performed.
  990. === Note: You should also confim that your chosen reverse-geocode provider can perform
  991. === proper reverse-geocoding for the area your vehicles will be travelling.
  992. -->
  993.  
  994. <!-- =============================================
  995. === Geonames Reverse-Geocode Provider (default disabled)
  996. === - This reverse-geocoding uses the services provided by 'GeoNames.org' [http://www.geonames.org]
  997. === - Geonames also provides a commercial-use reverse-geocoding service that guarantees a faster and
  998. === more reliable response time. More information is available at the following link:
  999. === http://www.geonames.org/commercial-webservices.html
  1000. === Or contact them at the following email address:
  1001. === services@geonames.org
  1002. === (Make sure you let them know you are using it with 'OpenGTS'!)
  1003. -->
  1004. <ReverseGeocodeProvider name="geonames"
  1005. active="${Domain.ReverseGeocodeProvider.active=false}"
  1006. class="org.opengts.geocoder.geonames.GeoNames"
  1007. key=""
  1008. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1009. <Property key="radiusKM">1.0</Property>
  1010. <Property key="host">ws.geonames.org</Property>
  1011. <Property key="postalFailover">false</Property> <!-- findNearbyPostalCodes -->
  1012. <Property key="streetFailover">false</Property> <!-- findNearbyStreetsOSM -->
  1013. <!--
  1014. === - Set the following properties to appropriate values when purchasing the
  1015. === Geonames Commercial reverse-geocoding service.
  1016. === - Geonames may also require a "username" for the free service as well.
  1017. -->
  1018. <Property key="failoverHost"></Property>
  1019. <Property key="username"></Property>
  1020. <Property key="token"></Property>
  1021. <Property key="alwaysFast">false</Property>
  1022. </ReverseGeocodeProvider>
  1023. <ReverseGeocodeProvider name="geonames_navteq"
  1024. active="${Domain.ReverseGeocodeProvider.active=false}"
  1025. class="org.opengts.geocoder.geonames.GeoNames"
  1026. key=""
  1027. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1028. <!--
  1029. === Set the following properties to appropriate values when purchasing the
  1030. === Locally hosted Geonames Commercial reverse-geocoding service using NavTeq:
  1031. -->
  1032. <Property key="host">localhost:8080</Property>
  1033. <Property key="postalFailover">false</Property> <!-- findNearbyPostalCodes -->
  1034. <Property key="streetFailover">false</Property> <!-- findNearbyStreetsOSM -->
  1035. <Property key="service.findNearestAddress">geonames/findAddress</Property>
  1036. <Property key="failoverHost"></Property>
  1037. <Property key="username">geonames</Property>
  1038. <Property key="token"></Property>
  1039. <Property key="alwaysFast">true</Property>
  1040. </ReverseGeocodeProvider>
  1041.  
  1042. <!-- =============================================
  1043. === OpenCageData Reverse-Geocode Provider (default disabled)
  1044. === - This reverse-geocoding uses the services provided by 'OpenCageData.com' [http://www.opencagedata.com/]
  1045. === - Properties:
  1046. === Domain.ReverseGeocodeProvider.active=opencage
  1047. === Domain.ReverseGeocodeProvider.key=*PLACE_AUTHORIZATION_KEY_HERE*
  1048. -->
  1049. <ReverseGeocodeProvider name="opencage"
  1050. active="${Domain.ReverseGeocodeProvider.active=false}"
  1051. class="org.opengts.geocoder.opencage.OpenCageData"
  1052. key="${Domain.ReverseGeocodeProvider.key=*PLACE_AUTHORIZATION_KEY_HERE*}"
  1053. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1054. <Property key="alwaysFast">false</Property>
  1055. </ReverseGeocodeProvider>
  1056.  
  1057. <!-- =============================================
  1058. === GISGraphy Reverse-Geocode Provider (default disabled)
  1059. === - http://www.gisgraphy.com
  1060. === - Must be installed on your servers
  1061. -->
  1062. <ReverseGeocodeProvider name="gisgraphy"
  1063. active="${Domain.ReverseGeocodeProvider.active=false}"
  1064. class="org.opengts.geocoder.gisgraphy.GisGraphy"
  1065. key=""
  1066. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1067. <Property key="host">localhost</Property> <!-- services.gisgraphy.com -->
  1068. <Property key="streetURL"></Property> <!-- http://localhost:8081/street/streetsearch? -->
  1069. <Property key="geolocURL"></Property> <!-- http://localhost:8081/geoloc/findnearbylocation? -->
  1070. <!-- <Property key="radiusKM">1.1</Property> -->
  1071. </ReverseGeocodeProvider>
  1072.  
  1073. <!-- =============================================
  1074. === GISGraphy Reverse-Geocode Provider V4 (default disabled)
  1075. === - http://www.gisgraphy.com
  1076. === - Must be installed on your servers
  1077. -->
  1078. <ReverseGeocodeProvider name="gisgraphy4"
  1079. active="${Domain.ReverseGeocodeProvider.active=false}"
  1080. class="org.opengts.geocoder.gisgraphy4.GisGraphy"
  1081. key=""
  1082. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1083. <Property key="host">localhost</Property> <!-- services.gisgraphy.com -->
  1084. <Property key="streetURL"></Property> <!-- http://free.gisgraphy.com/reversegeocoding/reversegeocode? -->
  1085. </ReverseGeocodeProvider>
  1086.  
  1087. <!-- =============================================
  1088. === Nominatim OpenStreetMap/Mapquest Reverse-Geocode Provider
  1089. === - Mapquest ==> http://open.mapquestapi.com/nominatim/
  1090. === - OpenStreetMap ==> http://nominatim.openstreetmap.org
  1091. === The OpenStreetMap "Nominatim Usage Policy" can be found at the following link:
  1092. === http://wiki.openstreetmap.org/wiki/Nominatim_usage_policy
  1093. === - Register for Mapquest Nominatim AppKey at the following link:
  1094. === https://developer.mapquest.com/
  1095. -->
  1096. <ReverseGeocodeProvider name="nominatim"
  1097. active="${Domain.ReverseGeocodeProvider.active=false}"
  1098. class="org.opengts.geocoder.nominatim.Nominatim"
  1099. key=""
  1100. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1101. <!-- Property key="reverseURL"><![CDATA[http://nominatim.openstreetmap.org/reverse?]]></Property -->
  1102. <Property key="reverseURL"><![CDATA[http://open.mapquestapi.com/nominatim/v1/reverse?]]></Property>
  1103. <Property key="host"></Property>
  1104. <Property key="mapquestAppKey"></Property> <!-- Mapquest "Consumer key" -->
  1105. <Property key="addressdetails">1</Property>
  1106. <Property key="zoom">18</Property>
  1107. <Property key="email"></Property> <!-- per usage policy, this must be specified -->
  1108. <Property key="useResultAddress">false</Property>
  1109. <Property key="alwaysFast">false</Property>
  1110. </ReverseGeocodeProvider>
  1111.  
  1112. <!-- =============================================
  1113. === TineGeocoder Reverse-Geocode Provider (default disabled)
  1114. === - This reverse-geocoding uses the services provided by 'TinyGeocoder.com' [http://www.TinyGeocoder.com]
  1115. -->
  1116. <ReverseGeocodeProvider name="tinygeocoder"
  1117. active="${Domain.ReverseGeocodeProvider.active=false}"
  1118. class="org.opengts.geocoder.tinygeocoder.TinyGeocoder"
  1119. key=""
  1120. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1121. </ReverseGeocodeProvider>
  1122. <GeocodeProvider name="tinygeocoder"
  1123. active="${Domain.GeocodeProvider.active=false}"
  1124. class="org.opengts.geocoder.tinygeocoder.TinyGeocoder"
  1125. key=""
  1126. rtPropPrefix="Domain.GeocodeProvider.">
  1127. </GeocodeProvider>
  1128.  
  1129. <!-- =============================================
  1130. === GoogleGeocodeV2 Reverse-Geocode Provider (default disabled) [OBSOLETE as of 2013/09/08]
  1131. === - Register for Google Map keys at: http://www.google.com/apis/maps/signup.html
  1132. === - NOTE: When using the Google reverse-geocoding service, it is your responsibility
  1133. === to make sure you comply with all of the Google terms of use for this service.
  1134. === - NOTE: Google may limit he number of reverse-geocodes allowed in any 24-hour period.
  1135. -->
  1136. <ReverseGeocodeProvider name="google"
  1137. active="${Domain.ReverseGeocodeProvider.active=false}"
  1138. class="org.opengts.geocoder.google.GoogleGeocodeV2"
  1139. key="${Domain.ReverseGeocodeProvider.key=***PLACE_AUTHORIZATION_KEY_HERE ***}"
  1140. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1141. <Property key="sensor">true</Property>
  1142. <Property key="alwaysFast">false</Property>
  1143. </ReverseGeocodeProvider>
  1144. <GeocodeProvider name="googleV2"
  1145. active="${Domain.GeocodeProvider.active=false}"
  1146. class="org.opengts.geocoder.google.GoogleGeocodeV2"
  1147. key="${Domain.GeocodeProvider.key=}"
  1148. rtPropPrefix="Domain.GeocodeProvider.">
  1149. <Property key="sensor">false</Property>
  1150. </GeocodeProvider>
  1151.  
  1152. <!-- =============================================
  1153. === GoogleGeocodeV3 Reverse-Geocode Provider (default disabled)
  1154. === - NOTE: When using the Google reverse-geocoding service, it is your responsibility
  1155. === to make sure you comply with all of the Google terms of use for this service.
  1156. === - NOTE: Google may limit he number of reverse-geocodes allowed in any 24-hour period.
  1157. -->
  1158. <ReverseGeocodeProvider name="googleV3"
  1159. active="${Domain.ReverseGeocodeProvider.active=false}"
  1160. class="org.opengts.geocoder.google.GoogleGeocodeV3"
  1161. key="${Domain.ReverseGeocodeProvider.key=}"
  1162. rtPropPrefix="Domain.ReverseGeocodeProvider.">
  1163. <Property key="sensor">true</Property>
  1164. <Property key="alwaysFast">false</Property>
  1165. <Property key="signatureKey"></Property>
  1166. </ReverseGeocodeProvider>
  1167. <GeocodeProvider name="googleV3"
  1168. active="${Domain.GeocodeProvider.active=false}"
  1169. class="org.opengts.geocoder.google.GoogleGeocodeV3"
  1170. key="${Domain.GeocodeProvider.key=}"
  1171. rtPropPrefix="Domain.GeocodeProvider.">
  1172. <Property key="sensor">false</Property>
  1173. <Property key="signatureKey"></Property>
  1174. </GeocodeProvider>
  1175.  
  1176. <!-- ========================================================================================== -->
  1177.  
  1178. <!-- =============================================
  1179. === OpenCellID
  1180. === Note: A "key" may be required to access this service.
  1181. === Please see the following link for more info:
  1182. === http://www.opencellid.org/
  1183. -->
  1184. <MobileLocationProvider name="openCellID"
  1185. active="${Domain.MobileLocationProvider.active=false}"
  1186. class="org.opengts.cellid.opencellid.OpenCellID"
  1187. key="${Domain.MobileLocationProvider.key=}"
  1188. rtPropPrefix="Domain.MobileLocationProvider.">
  1189. <Property key="timeoutMS">5000</Property>
  1190. </MobileLocationProvider>
  1191.  
  1192. <!-- =============================================
  1193. === UnwiredLabs (not yet tested - may not yet be fully supported)
  1194. === Note: A "key" (token) may be required to access this service.
  1195. === Please see the following link for more info:
  1196. === http://www.unwiredlabs.com/
  1197. -->
  1198. <MobileLocationProvider name="unwiredLabs"
  1199. active="${Domain.MobileLocationProvider.active=false}"
  1200. class="org.opengts.cellid.unwiredlabs.UnwiredLabs"
  1201. key="${Domain.MobileLocationProvider.key=}"
  1202. rtPropPrefix="Domain.MobileLocationProvider.">
  1203. <Property key="timeoutMS">5000</Property>
  1204. </MobileLocationProvider>
  1205.  
  1206. <!-- ========================================================================================== -->
  1207.  
  1208. <!-- ACL definition
  1209. === Access levels:
  1210. === 0 = no access
  1211. === 1 = read(view) access
  1212. === 2 = write(edit) access
  1213. === 3 = all(create/delete) access
  1214. -->
  1215. <Acls default="1">
  1216. <!-- admin -->
  1217. <Acl name="acl.admin.account" values="0,1,2" default="1" i18n="PrivateXML.acl.accountAdmin" >Account Administration</Acl>
  1218. <Acl name="acl.admin.user" values="0,1,2" default="1" i18n="PrivateXML.acl.userAdminSelf" >User Administration (Current user)</Acl>
  1219. <Acl name="acl.admin.user:all" values="0,1,2,3" default="0" i18n="PrivateXML.acl.userAdminAll" >User Administration (All users)</Acl>
  1220. <Acl name="acl.admin.user:acls" values="0,1,2" default="0" i18n="PrivateXML.acl.userAdminACL" >User Administration (ACL access)</Acl>
  1221. <Acl name="acl.admin.user:groups" values="0,1,2" default="1" i18n="PrivateXML.acl.userAdminGroups" >User Administration (Group)</Acl>
  1222. <Acl name="acl.admin.user:role" values="0,1,2" default="1" i18n="PrivateXML.acl.userAdminRole" >User Administration (Role)</Acl>
  1223. <Acl name="acl.admin.user:deviceID" values="0,1,2" default="1" i18n="PrivateXML.acl.userAdminDeviceID" >User Administration (Preferred DeviceID)</Acl>
  1224. <Acl name="acl.admin.role" values="0,1,2,3" default="0" i18n="PrivateXML.acl.roleAdmin" >Role Administration</Acl>
  1225. <Acl name="acl.admin.device" values="0,1,2,3" default="1" i18n="PrivateXML.acl.deviceAdmin" >Device Administration</Acl>
  1226. <Acl name="acl.admin.device:uniqueID" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminUniqID" >Device Administration (Device UniqueID)</Acl>
  1227. <Acl name="acl.admin.device:active" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminActive" >Device Administration (Device Active)</Acl>
  1228. <Acl name="acl.admin.device:serverID" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminServID" >Device Administration (Server ID)</Acl>
  1229. <Acl name="acl.admin.device:firmware" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminFirmware" >Device Administration (Firmware)</Acl>
  1230. <Acl name="acl.admin.device:rules" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminRules" >Device Administration (Notification Rules)</Acl>
  1231. <Acl name="acl.admin.device:commands" values="0,2" default="2" i18n="PrivateXML.acl.deviceAdminCommands" >Device Administration (Commands)</Acl>
  1232. <Acl name="acl.admin.device:sms" values="0,2" default="2" i18n="PrivateXML.acl.deviceAdminSms" >Device Administration (SMS Commands)</Acl>
  1233. <Acl name="acl.admin.device:editSMS" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditSms" >Device Administration (Edit SMS)</Acl>
  1234. <Acl name="acl.admin.device:editSIM" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditSIM" >Device Administration (Edit SIM)</Acl>
  1235. <Acl name="acl.admin.device:editEquipStat" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditEqStat">Device Administration (Edit Equip Status)</Acl>
  1236. <Acl name="acl.admin.device:editIMEI" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditIMEI" >Device Administration (Edit IMEI)</Acl>
  1237. <Acl name="acl.admin.device:editSerial" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditSerial">Device Administration (Edit Serial#)</Acl>
  1238. <Acl name="acl.admin.device:editDatKey" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminEditDatKey">Device Administration (Edit DataKey)</Acl>
  1239. <Acl name="acl.admin.device:fuelCapacity" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminFuelEconom">Device Administration (Fuel Economy)</Acl>
  1240. <Acl name="acl.admin.device:fuelProfile" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminFuelProfil">Device Administration (Fuel Profile)</Acl>
  1241. <Acl name="acl.admin.device:fuelEconomy" values="0,1,2" default="1" i18n="PrivateXML.acl.deviceAdminFuelCapac" >Device Administration (Fuel Capacity)</Acl>
  1242. <Acl name="acl.admin.group" values="0,1,2,3" default="1" i18n="PrivateXML.acl.groupAdmin" >Group Administration</Acl>
  1243. <Acl name="acl.admin.driver" values="0,1,2,3" default="1" i18n="PrivateXML.acl.driverAdmin" >Driver Administration</Acl>
  1244. <Acl name="acl.admin.zone" values="0,1,2,3" default="1" i18n="PrivateXML.acl.zoneAdmin" >Geozone Administration</Acl>
  1245. <Acl name="acl.admin.statusCode" values="0,1,2,3" default="1" i18n="PrivateXML.acl.statusCodeAdmin" >StatusCode Administration</Acl>
  1246. <Acl name="acl.admin.rule" values="0,1,2,3" default="1" i18n="PrivateXML.acl.ruleAdmin" >Rule Administration</Acl>
  1247. <Acl name="acl.admin.password" values="0,2" default="2" i18n="PrivateXML.acl.changePassword" >Change Password</Acl>
  1248. <!-- HTML Wrapper -->
  1249. <Acl name="acl.admin.htmlWrapper" values="0,1,2,3" default="3" i18n="PrivateXML.acl.htmlWrapper" >Generic HTML Wrapper</Acl>
  1250. <!-- system admin -->
  1251. <Acl name="acl.admin.sysAdmin" values="0,1,2,3" default="0" i18n="PrivateXML.acl.systemAdmin" >System Administration</Acl>
  1252. <!-- maps -->
  1253. <Acl name="acl.map.device" values="0,1" default="1" i18n="PrivateXML.acl.deviceMap" >Device Map Display</Acl>
  1254. <Acl name="acl.map.device:auto" values="0,1" default="1" i18n="PrivateXML.acl.deviceMapAuto" >Device Map (Auto Update)</Acl>
  1255. <Acl name="acl.map.fleet" values="0,1" default="1" i18n="PrivateXML.acl.fleetMap" >Fleet/Group Map Display</Acl>
  1256. <Acl name="acl.map.fleet:auto" values="0,1" default="1" i18n="PrivateXML.acl.fleetMapAuto" >Fleet/Group Map (Auto Update)</Acl>
  1257. <!-- report groups -->
  1258. <Acl name="acl.reportGroup.detail" values="0,1" default="1" i18n="PrivateXML.acl.reportDetail" >Report Group (Detail)</Acl>
  1259. <Acl name="acl.reportGroup.summary" values="0,1" default="1" i18n="PrivateXML.acl.reportSummary" >Report Group (Summary)</Acl>
  1260. <Acl name="acl.reportGroup.performance" values="0,1" default="1" i18n="PrivateXML.acl.reportPerformance" >Report Group (Performance)</Acl>
  1261. <Acl name="acl.reportGroup.ifta" values="0,1" default="1" i18n="PrivateXML.acl.reportOther" >Report Group (I.F.T.A.)</Acl>
  1262. <Acl name="acl.reportGroup.sysadmin" values="0,1" default="1" i18n="PrivateXML.acl.reportSysAdmin" >Report Group (SystemAdmin)</Acl>
  1263. <!-- report access -->
  1264. <Acl name="acl.report.eventDetail" values="0,1" default="1" i18n="PrivateXML.acl.report.eventDetail" >Report (Event Detail)</Acl>
  1265. <Acl name="acl.report.eventSummary" values="0,1" default="1" i18n="PrivateXML.acl.report.fleetSummary" >Report (Fleet/Group Summary)</Acl>
  1266. <Acl name="acl.report.eventCount" values="0,1" default="1" i18n="PrivateXML.acl.report.eventCount" >Report (Event Count)</Acl>
  1267. <Acl name="acl.report.speedOption" values="0,1" default="1" i18n="PrivateXML.acl.report.speedOption" >Report (Speeds over Selected Value)</Acl>
  1268. <Acl name="acl.report.speedPosted" values="0,1" default="1" i18n="PrivateXML.acl.report.speedPosted" >Report (Speeds over Posted Limit)</Acl>
  1269. <Acl name="acl.report.excessSpeed" values="0,1" default="1" i18n="PrivateXML.acl.report.excessSpeed" >Report (Excess Speed Status Code)</Acl>
  1270. <Acl name="acl.report.motionSummary" values="0,1" default="1" i18n="PrivateXML.acl.report.motionSummary" >Report (Driving/Idle Time Device Summary)</Acl>
  1271. <Acl name="acl.report.thermo" values="0,1" default="1" i18n="PrivateXML.acl.report.temperature" >Report (Temperature)</Acl>
  1272. <Acl name="acl.report.j1708fault" values="0,1" default="1" i18n="PrivateXML.acl.report.j1708Fault" >Report (J1708 Fault)</Acl>
  1273. <Acl name="acl.report.propertyValue" values="0,1" default="1" i18n="PrivateXML.acl.report.propertyValue" >Report (Property Value)</Acl>
  1274. <Acl name="acl.report.diagnosticValue" values="0,1" default="1" i18n="PrivateXML.acl.report.diagValue" >Report (Error/Diagnostic Value)</Acl>
  1275. <Acl name="acl.report.unassignedDevices" values="0,1" default="0" i18n="PrivateXML.acl.report.unassignedDev" >Report (Unassigned Devices)</Acl>
  1276. <Acl name="acl.report.periodicMaint" values="0,1" default="1" i18n="PrivateXML.acl.report.periodicMain" >Report (Periodic Maintenance)</Acl>
  1277. <Acl name="acl.report.distanceTravel" values="0,1" default="1" i18n="PrivateXML.acl.report.distTravel" >Report (Distance Traveled)</Acl>
  1278. <Acl name="acl.report.ignitionDetail" values="0,1" default="1" i18n="PrivateXML.acl.report.ignitionDetail">Report (Ignition Detail)</Acl>
  1279. <Acl name="acl.report.geozone" values="0,1" default="1" i18n="PrivateXML.acl.report.geozone" >Report (Geozone)</Acl>
  1280. <!-- not supported
  1281. <Acl name="acl.report.tripReport" values="0,1" default="1" i18n="PrivateXML.acl.report.tripReport" >Report (Trip Report Detail)</Acl>
  1282. <Acl name="acl.report.bcrossDetail" values="0,1" default="1" i18n="PrivateXML.acl.report.bCrossDetail" >Report (Border-Crossing Detail)</Acl>
  1283. <Acl name="acl.report.bcrossSummary" values="0,1" default="1" i18n="PrivateXML.acl.report.bCrossSummary" >Report (Border-Crossing Summary)</Acl>
  1284. -->
  1285. </Acls>
  1286.  
  1287. <!-- Defined JSP Entries (this section is optional)
  1288. === Notes:
  1289. === - This can be used to dynamically control which JSP file is used based on the current
  1290. === login environment
  1291. === - JSP file paths are relative to the servlet base directory
  1292. === - At least one entry must define the JSP name "default"
  1293. === - The "rtPropPrefix" value can be used to override the JSP "file" for a given name.
  1294. === For instance "Domain.JSPEntries.defailt=/jsp/myLoginSession.jsp"
  1295. -->
  1296. <JSPEntries rtPropPrefix="Domain.JSPEntries.">
  1297. <JSP name="default" file="/jsp/loginSession_banner.jsp"/>
  1298. <JSP name="banner" file="/jsp/loginSession_banner.jsp"/>
  1299. <JSP name="frame" file="/jsp/loginSession_frame.jsp"/>
  1300. <JSP name="emailReport" file="/jsp/emailReport.jsp"/>
  1301. <JSP name="oldjsp" file="/jsp/loginSession.jsp"/>
  1302. </JSPEntries>
  1303.  
  1304. <!-- Defined pages
  1305. === Notes:
  1306. === - All classes listed here must implement "org.opengts.war.tools.WebPage"
  1307. === - Remove/Comment any of the following "Page" tags to disable the corresponding feature
  1308. === - Comment/Remove the 'NewAccount' line below to disable the ability to create new accounts
  1309. === - The components of these webpages are displayed as taglib entries within the JSP file
  1310. === "war/track/jsp/loginSession.jsp" (which is copied into the 'track.war' file at built-time).
  1311. === The page decorations (look-and-feel) can be changed by modifying this JSP file.
  1312. === - A complete custom JSP file can also be created and used for the web-interface display.
  1313. === The new JSP file should be specified on the "jsp=" attribute on the "WebPages" tag below.
  1314. === This file should be specified relative to the servlet base "track/" directory.
  1315. === - The Color and Fonts for the various pages can also be modified by changing the various
  1316. === CSS files in the directory "war/track/css/".
  1317. === - The "rtPropPrefix" value can be used to disable a given Page to omit it from the menu.
  1318. === For instance "Domain.WebPages.defailt=/jsp/myLoginSession.jsp"
  1319. === - The "ButtonImage" tag specifies a background button image file. To reference the file
  1320. === relative to the specified "buttonDir" attribute (on the "WebPages" tag), do not prefix
  1321. === the "ButtonImage" file reference with "/". To specify an image relative to the servlet
  1322. === URL, prefix the image reference with a single "/". To use this feature, the property
  1323. === "topMenu.menuType" must be set to "button" or "button-icon".
  1324. === - The "IconImage" tag specifies a foreground button image file. To reference the file
  1325. === relative to the specified "iconDir" attribute (on the "WebPages" tag), do not prefix
  1326. === the "IconImage" file reference with "/". To specify an image relative to the servlet
  1327. === URL, prefix the image reference with a single "/". To use this feature, the property
  1328. === "topMenu.menuType" must be set to "button-icon".
  1329. -->
  1330. <WebPages rtPropPrefix="Domain.WebPages."
  1331. jsp="default"
  1332. cssDir="/css"
  1333. iconDir=""
  1334. buttonDir=""
  1335. >
  1336. <!-- NewAccount: Uncomment to enable "New Account" button on login page - ->
  1337. <Page class="org.opengts.war.track.page.NewAccount">
  1338. </Page>
  1339. <!- - -->
  1340. <Page rtKey="ForgotPassword" class="org.opengts.war.track.page.ForgotPassword">
  1341. </Page>
  1342. <Page rtKey="ReportDisplay" class="org.opengts.war.track.page.ReportDisplay">
  1343. </Page>
  1344. <!-- Login/Menu -->
  1345. <MenuGroup name="menuGroup.main" topMenu="false" menuBar="true">
  1346. <Title i18n="PrivateXML.menugroup.main">Main</Title>
  1347. <Page rtKey="TopMenu" class="org.opengts.war.track.page.TopMenu">
  1348. </Page>
  1349. <Page rtKey="AccountLogin" class="org.opengts.war.track.page.AccountLogin">
  1350. <Property key="customLoginUrl"></Property>
  1351. <Property key="VSeparatorImage.path"></Property>
  1352. <Property key="VSeparatorImage.width"></Property>
  1353. <Property key="VSeparatorImage.height"></Property>
  1354. </Page>
  1355. </MenuGroup>
  1356. <!-- Maps -->
  1357. <MenuGroup name="menuGroup.maps" topMenu="true" menuBar="true">
  1358. <Title i18n="PrivateXML.menugroup.maps">Mapping</Title>
  1359. <Page rtKey="TrackMapDevice" class="org.opengts.war.track.page.TrackMapDevice">
  1360. <AclName>acl.map.device</AclName>
  1361. <!-- <ButtonImage> Place_Button_Cap_Image_URL_Here </ButtonImage> -->
  1362. <!-- <ButtonImageAlt> Place_Rollover_Button_Cap_Image_URL_Here </ButtonImageAlt> -->
  1363. <!-- <IconImage> Place_Button_Icon_Overlay_Image_URL_Here </IconImage> -->
  1364. </Page>
  1365. <Page rtKey="TrackMapFleet" class="org.opengts.war.track.page.TrackMapFleet">
  1366. <AclName>acl.map.fleet</AclName>
  1367. <!-- <ButtonImage> Place_Button_Cap_Image_URL_Here </ButtonImage> -->
  1368. <!-- <ButtonImageAlt> Place_Rollover_Button_Cap_Image_URL_Here </ButtonImageAlt> -->
  1369. <!-- <IconImage> Place_Button_Icon_Overlay_Image_URL_Here </IconImage> -->
  1370. <Property key="showFleetFromCalendar">false</Property>
  1371. <!-- <Property key="fleetDeviceEventCount">1</Property> -->
  1372. </Page>
  1373. </MenuGroup>
  1374. <!-- Reports -->
  1375. <MenuGroup name="menuGroup.reports" topMenu="true" menuBar="true">
  1376. <Title i18n="PrivateXML.menugroup.reports">Reports</Title>
  1377. <Page rtKey="ReportMenuDeviceDetail" class="org.opengts.war.track.page.ReportMenuDeviceDetail">
  1378. <AclName>acl.reportGroup.detail</AclName>
  1379. </Page>
  1380. <Page rtKey="ReportMenuFleetDetail" class="org.opengts.war.track.page.ReportMenuFleetDetail">
  1381. <AclName>acl.reportGroup.detail</AclName>
  1382. </Page>
  1383. <Page rtKey="ReportMenuFleetSummary" class="org.opengts.war.track.page.ReportMenuFleetSummary">
  1384. <AclName>acl.reportGroup.summary</AclName>
  1385. </Page>
  1386. <Page rtKey="ReportMenuDriverPerformance" class="org.opengts.war.track.page.ReportMenuDriverPerformance">
  1387. <AclName>acl.reportGroup.performance</AclName>
  1388. </Page>
  1389. <!-- <Page class="org.opengts.war.track.page.ReportMenuIFTA">
  1390. <AclName>acl.reportGroup.ifta</AclName>
  1391. </Page> -->
  1392. </MenuGroup>
  1393. <!-- Admin -->
  1394. <MenuGroup name="menuGroup.admin" topMenu="true" menuBar="true">
  1395. <Title i18n="PrivateXML.menugroup.administration">Administration</Title>
  1396. <Page rtKey="AccountInfo" class="org.opengts.war.track.page.AccountInfo">
  1397. <AclName>acl.admin.account</AclName>
  1398. </Page>
  1399. <Page rtKey="UserInfo" class="org.opengts.war.track.page.UserInfo">
  1400. <AclName>acl.admin.user</AclName>
  1401. </Page>
  1402. <Page rtKey="DeviceInfo" class="org.opengts.war.track.page.DeviceInfo">
  1403. <AclName>acl.admin.device</AclName>
  1404. </Page>
  1405. <Page rtKey="GroupInfo" class="org.opengts.war.track.page.GroupInfo">
  1406. <AclName>acl.admin.group</AclName>
  1407. </Page>
  1408. <!-- DriverInfo: uncomment this section to enable the "Driver Admin" page
  1409. <Page rtKey="DriverInfo" class="org.opengts.war.track.page.DriverInfo">
  1410. <AclName>acl.admin.driver</AclName>
  1411. </Page>
  1412. -->
  1413. <Page rtKey="ZoneInfo" class="org.opengts.war.track.page.ZoneInfo">
  1414. <AclName>acl.admin.zone</AclName>
  1415. </Page>
  1416. <Page rtKey="ChangePassword" class="org.opengts.war.track.page.ChangePassword">
  1417. <AclName>acl.admin.password</AclName>
  1418. </Page>
  1419. </MenuGroup>
  1420. <!-- Remove/Comment this group to remove the "Links" menu bar tab -->
  1421. <!-- Links - ->
  1422. <MenuGroup name="menuGroup.links" topMenu="false" menuBar="true">
  1423. <Title i18n="PrivateXML.menugroup.links">Links</Title>
  1424. <Link url="http://www.opengts.org" target="_blank">
  1425. <NavigationDescription>OpenGTS</NavigationDescription>
  1426. <MenuDescription>OpenGTS home</MenuDescription>
  1427. <MenuHelp>OpenGTS project home page</MenuHelp>
  1428. </Link>
  1429. <Link url="http://www.opendmtp.org" target="_blank">
  1430. <NavigationDescription>OpenDMTP</NavigationDescription>
  1431. <MenuDescription>OpenDMTP home</MenuDescription>
  1432. <MenuHelp>OpenDMTP project home page</MenuHelp>
  1433. </Link>
  1434. <Link url="http://www.example.com?l=${locale}&amp;a=${accountID}&amp;u=${userID}" target="_blank">
  1435. <NavigationDescription>Example link</NavigationDescription>
  1436. <MenuDescription>Account/User example</MenuDescription>
  1437. <MenuHelp>Example Account/User link</MenuHelp>
  1438. </Link>
  1439. </MenuGroup>
  1440. -->
  1441. <!-- SysAdmin -->
  1442. <MenuGroup name="menuGroup.sysAdmin" topMenu="true" menuBar="true">
  1443. <!-- These web-pages may not be available in this release -->
  1444. <Title i18n="PrivateXML.menugroup.systemAdmin">System Admin</Title>
  1445. <Page rtKey="SysAdminAccounts" class="org.opengts.war.track.page.SysAdminAccounts"
  1446. optional="true">
  1447. <AclName>acl.admin.sysAdmin</AclName>
  1448. </Page>
  1449. <!--
  1450. <Page rtKey="ReportMenuSysAdmin" class="org.opengts.war.track.page.ReportMenuSysAdmin"
  1451. optional="true">
  1452. <AclName>acl.reportGroup.sysadmin</AclName>
  1453. </Page>
  1454. -->
  1455. </MenuGroup>
  1456. </WebPages>
  1457.  
  1458. <!-- Defined reports
  1459. === All reports referenced here must be predefined in 'reports.xml'
  1460. === Those with the attribute optional="true" may not be present in this release
  1461. -->
  1462. <Reports rtPropPrefix="Domain.Reports.">
  1463.  
  1464. <!-- device.detail -->
  1465. <Report name="EventDetail">
  1466. <AclName>acl.report.eventDetail</AclName>
  1467. </Report>
  1468. <Report name="DriverMessageDetail">
  1469. <AclName>acl.report.eventDetail</AclName>
  1470. </Report>
  1471. <Report name="EventCountByDay"
  1472. optional="true">
  1473. <AclName>acl.report.eventCount</AclName>
  1474. </Report>
  1475. <Report name="MotionSummary">
  1476. <AclName>acl.report.motionSummary</AclName>
  1477. </Report>
  1478. <Report name="PropertyValue">
  1479. <AclName>acl.report.propertyValue</AclName>
  1480. </Report>
  1481. <Report name="DiagnosticValue">
  1482. <AclName>acl.report.diagnosticValue</AclName>
  1483. </Report>
  1484.  
  1485. <!-- fleet.detail -->
  1486. <Report name="EventDetail_Group">
  1487. <AclName>acl.report.eventDetail</AclName>
  1488. </Report>
  1489. <Report name="EventSpeedOption_Group">
  1490. <AclName>acl.report.speedOption</AclName>
  1491. </Report>
  1492.  
  1493. <!-- fleet.summary -->
  1494. <Report name="EventSummary">
  1495. <AclName>acl.report.eventSummary</AclName>
  1496. </Report>
  1497. <Report name="EventCount">
  1498. <AclName>acl.report.eventCount</AclName>
  1499. </Report>
  1500.  
  1501. <!-- device.performance -->
  1502. <Report name="EventSpeedOption">
  1503. <AclName>acl.report.speedOption</AclName>
  1504. </Report>
  1505. <Report name="EventExcessSpeed">
  1506. <AclName>acl.report.excessSpeed</AclName>
  1507. </Report>
  1508.  
  1509. </Reports>
  1510.  
  1511. <!-- ========================================================================================== -->
  1512.  
  1513. </Domain>
  1514. <!-- ================================================================================= -->
  1515.  
  1516. </PrivateLabels>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement