Commit 65d81905 by Michael Brachmann

bring things up to date with changes in master

parents b98dbc3d ab0baace
...@@ -25,3 +25,5 @@ emiMobileServer/Source/__recovery/ ...@@ -25,3 +25,5 @@ emiMobileServer/Source/__recovery/
*.log *.log
*.dll *.dll
webEMIMobile/config/__history/
...@@ -211,11 +211,13 @@ type ...@@ -211,11 +211,13 @@ type
procedure UniAlerter1Event(Sender: TDAAlerter; const EventName, procedure UniAlerter1Event(Sender: TDAAlerter; const EventName,
Message: string); Message: string);
private private
{ Private declarations } { Private declarations }
public public
CADUpdate: Boolean; CADUpdate: Boolean;
function HandleUniqueFilenames(const category: string): string; function HandleUniqueFilenames(const category: string): string;
function BadgeCounts(const BaseQuery: TUniQuery): Integer; function BadgeCounts(const BaseQuery: TUniQuery): Integer;
function EnsureConnected: Boolean;
end; end;
var var
...@@ -240,7 +242,18 @@ begin ...@@ -240,7 +242,18 @@ begin
ucENTCAD.Password := IniEntries.DatabasePassword; ucENTCAD.Password := IniEntries.DatabasePassword;
ucENTCAD.LoginPrompt := False; ucENTCAD.LoginPrompt := False;
EnsureConnected;
end;
function TApiDatabaseModule.EnsureConnected: Boolean;
begin
Result := False;
try
if not ucENTCAD.Connected then if not ucENTCAD.Connected then
begin
Logger.Log(2, 'Connecting to PostgreSQL API database...');
ucENTCAD.Connect; ucENTCAD.Connect;
ucENTCAD.ExecSQL('set search_path to lems, avl, entcad, public'); ucENTCAD.ExecSQL('set search_path to lems, avl, entcad, public');
...@@ -249,6 +262,15 @@ begin ...@@ -249,6 +262,15 @@ begin
Logger.Log(1, 'Starting PostgreSQL disupdate listener'); Logger.Log(1, 'Starting PostgreSQL disupdate listener');
UniAlerter1.Start; UniAlerter1.Start;
Logger.Log(1, 'PostgreSQL disupdate listener started'); Logger.Log(1, 'PostgreSQL disupdate listener started');
CADUpdate := True;
end;
Result := True;
except
on E: Exception do
Logger.Log(1, 'PostgreSQL API database unavailable: ' + E.Message);
end;
end; end;
procedure TApiDatabaseModule.uqComplaintListCalcFields(DataSet: TDataSet); procedure TApiDatabaseModule.uqComplaintListCalcFields(DataSet: TDataSet);
......
...@@ -23,6 +23,8 @@ type ...@@ -23,6 +23,8 @@ type
procedure RequireActiveDevice; procedure RequireActiveDevice;
function OpenLemsConnection: TUniConnection; function OpenLemsConnection: TUniConnection;
public public
constructor Create;
destructor Destroy; override;
function GetBadgeCounts: TJSONObject; function GetBadgeCounts: TJSONObject;
function GetComplaintList: TJSONObject; function GetComplaintList: TJSONObject;
function GetUnitList: TJSONObject; function GetUnitList: TJSONObject;
...@@ -48,22 +50,36 @@ implementation ...@@ -48,22 +50,36 @@ implementation
uses uses
uLibrary; uLibrary;
procedure TApiService.AfterConstruction;
constructor TApiService.Create;
begin begin
inherited; Logger.Log(3, 'TApiService.Create');
inherited Create;
ApiDB := TApiDatabaseModule.Create(nil); ApiDB := TApiDatabaseModule.Create(nil);
if not ApiDB.ucENTCAD.Connected then
begin
Logger.Log(1, 'Unable to connect to API database');
raise EXDataHttpException.Create(
500,
'Unable to connect to the database. Please contact EM Systems support.'
);
end;
Logger.Log(3, 'ApiDatabaseModule created'); Logger.Log(3, 'ApiDatabaseModule created');
RequireActiveDevice; RequireActiveDevice;
end; end;
procedure TApiService.BeforeDestruction; destructor TApiService.Destroy;
begin begin
ApiDB.Free; ApiDB.Free;
inherited;
Logger.Log(3, 'ApiDatabaseModule destroyed'); Logger.Log(3, 'ApiDatabaseModule destroyed');
inherited Destroy;
end; end;
function TApiService.GetBadgeCounts: TJSONObject; function TApiService.GetBadgeCounts: TJSONObject;
begin begin
Logger.Log(3, '---TApiService.GetBadgeCounts initiated'); Logger.Log(3, '---TApiService.GetBadgeCounts initiated');
......
...@@ -55,10 +55,7 @@ begin ...@@ -55,10 +55,7 @@ begin
ucLemsOCSO.Connect; ucLemsOCSO.Connect;
except except
on E: Exception do on E: Exception do
begin
Logger.Log(2, Format('Failed to connect to auth database: %s', [E.Message])); Logger.Log(2, Format('Failed to connect to auth database: %s', [E.Message]));
raise;
end;
end; end;
end; end;
......
...@@ -34,6 +34,9 @@ type ...@@ -34,6 +34,9 @@ type
function Login(const user, password, agency, credentialId, function Login(const user, password, agency, credentialId,
challengeToken, authenticatorData, clientDataJSON, challengeToken, authenticatorData, clientDataJSON,
signature: string): string; signature: string): string;
constructor Create;
destructor Destroy; override;
function Login(const User, Password, Agency: string): string;
function GetAgencieslist(): TAgenciesList; function GetAgencieslist(): TAgenciesList;
function GetAgencyConfiglist: TAgencyConfigList; function GetAgencyConfiglist: TAgencyConfigList;
function BeginRegistration(const PhoneNumber: string): TJSONObject; function BeginRegistration(const PhoneNumber: string): TJSONObject;
...@@ -61,18 +64,28 @@ uses ...@@ -61,18 +64,28 @@ uses
{ TAuthService } { TAuthService }
procedure TAuthService.AfterConstruction;
constructor TAuthService.Create;
begin begin
inherited; Logger.Log(3, 'TAuthService.Create');
inherited Create;
authDB := TAuthDatabase.Create(nil); authDB := TAuthDatabase.Create(nil);
if not authDB.ucLemsOCSO.Connected then
begin
Logger.Log(1, 'Unable to connect to auth database');
raise EXDataHttpException.Create(500, 'Unable to connect to the database. Please contact EM Systems support.');
end;
Logger.Log(3, 'AuthDatabase created'); Logger.Log(3, 'AuthDatabase created');
end; end;
procedure TAuthService.BeforeDestruction; destructor TAuthService.Destroy;
begin begin
authDB.Free; authDB.Free;
inherited;
Logger.Log(3, 'AuthDatabase destroyed'); Logger.Log(3, 'AuthDatabase destroyed');
inherited Destroy;
end; end;
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
...@@ -806,6 +819,54 @@ begin ...@@ -806,6 +819,54 @@ begin
end; end;
end; end;
function TAuthService.Login(const User, Password, Agency: string): string;
var
userState: Integer;
JWT: TJWT;
begin
Logger.Log(1, Format('AuthService.Login - User: "%s" Agency: "%s"', [User, Agency]));
userState := CheckUser(User, Password, Agency);
try
userState := CheckUser(User, Password, Agency);
except
on E: Exception do
begin
Logger.Log(2, 'AuthService.Login - CheckUser error: ' + E.ClassName + ': ' + E.Message);
raise EXDataHttpException.Create(500, 'Login failed');
end;
end;
if userState = 0 then
begin
Logger.Log(2, Format('AuthService.Login - invalid login for User: "%s" Agency: "%s"', [User, Agency]));
raise EXDataHttpUnauthorized.Create('Invalid user or password');
end;
if userState = 1 then
begin
Logger.Log(2, Format('AuthService.Login - inactive user: "%s" Agency: "%s"', [User, Agency]));
raise EXDataHttpUnauthorized.Create('User not active');
end;
JWT := TJWT.Create;
try
JWT.Claims.JWTId := LowerCase(Copy(TUtils.GuidToVariant(TUtils.NewGuid), 2, 36));
JWT.Claims.IssuedAt := Now;
JWT.Claims.Expiration := IncHour(Now, 24);
JWT.Claims.SetClaimOfType<string>('user_name', userName);
JWT.Claims.SetClaimOfType<string>('user_fullname', userFullName);
JWT.Claims.SetClaimOfType<string>('user_agency', userAgency);
JWT.Claims.SetClaimOfType<string>('user_badge', userBadge);
JWT.Claims.SetClaimOfType<string>('user_id', userId);
JWT.Claims.SetClaimOfType<string>('user_personnelid', userPersonnelId);
Result := TJOSE.SHA256CompactToken(ServerConfig.jwtTokenSecret, JWT);
finally
JWT.Free;
end;
end;
function TAuthService.CheckUser(const User, Password, Agency: string): Integer; function TAuthService.CheckUser(const User, Password, Agency: string): Integer;
var var
userStr: string; userStr: string;
......
...@@ -148,7 +148,7 @@ begin ...@@ -148,7 +148,7 @@ begin
Result := ''; Result := '';
Msg := TStringList.Create; Msg := TStringList.Create;
try try
Msg.Add(Format('%s %s %s', Msg.Add(Format('%s %s %s %s',
[ [
FMethod, FMethod,
FUriPath + FUriQuery, FUriPath + FUriQuery,
......
...@@ -2,8 +2,8 @@ object FMain: TFMain ...@@ -2,8 +2,8 @@ object FMain: TFMain
Left = 0 Left = 0
Top = 0 Top = 0
Caption = 'emiMobileServer' Caption = 'emiMobileServer'
ClientHeight = 616 ClientHeight = 773
ClientWidth = 772 ClientWidth = 778
Color = clBtnFace Color = clBtnFace
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
...@@ -12,15 +12,16 @@ object FMain: TFMain ...@@ -12,15 +12,16 @@ object FMain: TFMain
Font.Style = [] Font.Style = []
OnClose = FormClose OnClose = FormClose
DesignSize = ( DesignSize = (
772 778
616) 773)
TextHeight = 13 TextHeight = 13
object pgcMain: TPageControl object pgcMain: TPageControl
Left = 8 Left = 0
Top = 39 Top = 40
Width = 756 Width = 778
Height = 575 Height = 733
ActivePage = tabConnectedClients ActivePage = tabServerLog
Align = alBottom
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
TabOrder = 3 TabOrder = 3
object tabServerLog: TTabSheet object tabServerLog: TTabSheet
...@@ -28,10 +29,9 @@ object FMain: TFMain ...@@ -28,10 +29,9 @@ object FMain: TFMain
object memoInfo: TMemo object memoInfo: TMemo
Left = 0 Left = 0
Top = 0 Top = 0
Width = 748 Width = 770
Height = 547 Height = 705
Align = alClient Align = alClient
ReadOnly = True
ScrollBars = ssVertical ScrollBars = ssVertical
TabOrder = 0 TabOrder = 0
WordWrap = False WordWrap = False
...@@ -43,8 +43,8 @@ object FMain: TFMain ...@@ -43,8 +43,8 @@ object FMain: TFMain
object grdConnectedClients: TDBGrid object grdConnectedClients: TDBGrid
Left = 0 Left = 0
Top = 0 Top = 0
Width = 748 Width = 770
Height = 487 Height = 645
Align = alClient Align = alClient
DataSource = dsConnectedClients DataSource = dsConnectedClients
Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack] Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
...@@ -75,8 +75,8 @@ object FMain: TFMain ...@@ -75,8 +75,8 @@ object FMain: TFMain
end end
object pnlConnectedClientsActions: TPanel object pnlConnectedClientsActions: TPanel
Left = 0 Left = 0
Top = 487 Top = 645
Width = 748 Width = 770
Height = 60 Height = 60
Align = alBottom Align = alBottom
Caption = 'pnlConnectedClientsActions' Caption = 'pnlConnectedClientsActions'
...@@ -120,7 +120,7 @@ object FMain: TFMain ...@@ -120,7 +120,7 @@ object FMain: TFMain
OnClick = btnApiSwaggerUIClick OnClick = btnApiSwaggerUIClick
end end
object btnExit: TButton object btnExit: TButton
Left = 713 Left = 695
Top = 8 Top = 8
Width = 75 Width = 75
Height = 25 Height = 25
......
...@@ -71,6 +71,9 @@ end; ...@@ -71,6 +71,9 @@ end;
procedure TWsDataModel.TimerFire(Sender: TObject); procedure TWsDataModel.TimerFire(Sender: TObject);
begin begin
if not FDb.ucENTCAD.Connected then
Exit;
if not FDb.CADUpdate then if not FDb.CADUpdate then
Exit; Exit;
...@@ -80,12 +83,13 @@ end; ...@@ -80,12 +83,13 @@ end;
procedure TWsDataModel.BroadcastAll; procedure TWsDataModel.BroadcastAll;
begin begin
Logger.Log(3, 'WsDataModel: broadcasting all'); Logger.Log(5, 'WsDataModel: BroadcastAll initiated');
try FBroadcast(BuildBadgeCountsJson); except on E: Exception do Logger.Log(2, 'WsDataModel BADGE_COUNTS error: ' + E.Message); end; try FBroadcast(BuildBadgeCountsJson); except on E: Exception do Logger.Log(2, 'WsDataModel BADGE_COUNTS error: ' + E.Message); end;
try FBroadcast(BuildUnitMapJson); except on E: Exception do Logger.Log(2, 'WsDataModel UNIT_MAP error: ' + E.Message); end; try FBroadcast(BuildUnitMapJson); except on E: Exception do Logger.Log(2, 'WsDataModel UNIT_MAP error: ' + E.Message); end;
try FBroadcast(BuildComplaintMapJson); except on E: Exception do Logger.Log(2, 'WsDataModel COMPLAINT_MAP error: ' + E.Message); end; try FBroadcast(BuildComplaintMapJson); except on E: Exception do Logger.Log(2, 'WsDataModel COMPLAINT_MAP error: ' + E.Message); end;
try FBroadcast(BuildUnitListJson); except on E: Exception do Logger.Log(2, 'WsDataModel UNIT_LIST error: ' + E.Message); end; try FBroadcast(BuildUnitListJson); except on E: Exception do Logger.Log(2, 'WsDataModel UNIT_LIST error: ' + E.Message); end;
try FBroadcast(BuildComplaintListJson); except on E: Exception do Logger.Log(2, 'WsDataModel COMPLAINT_LIST error: ' + E.Message); end; try FBroadcast(BuildComplaintListJson); except on E: Exception do Logger.Log(2, 'WsDataModel COMPLAINT_LIST error: ' + E.Message); end;
Logger.Log(5, 'WsDataModel: BroadcastAll end');
end; end;
function TWsDataModel.BuildBadgeCountsJson: string; function TWsDataModel.BuildBadgeCountsJson: string;
......
[Settings] [Settings]
LogFileNum=746 LogFileNum=153
webClientVersion=9.4.0 webClientVersion=0.9.4.1
[Database] [Database]
Server=192.168.102.10 Server=192.168.91.136
--Server=192.168.74.10 --Server=192.168.102.10
Port=5432 --Server=192.168.56.129
--Port=5432
--Port=5433 --Port=5433
Database=lems_wcso Database=lems_wcso
Username=postgres Username=postgres
--Password=postgreSQL Password=postgreSQL
Password=emsys01 --Password=emsys01
--Postgre!SQL
{
"url": "http://localhost:2001/emsys/emiMobile/",
"jwtTokenSecret": "super_secret0123super_secret4567",
"adminPassword": "whatisthisusedfor?",
"webAppFolder": "static",
"memoLogLevel": 5,
"fileLogLevel": 5
}
\ No newline at end of file
...@@ -108,8 +108,9 @@ ...@@ -108,8 +108,9 @@
<VerInfo_MajorVer>0</VerInfo_MajorVer> <VerInfo_MajorVer>0</VerInfo_MajorVer>
<VerInfo_MinorVer>9</VerInfo_MinorVer> <VerInfo_MinorVer>9</VerInfo_MinorVer>
<VerInfo_Release>4</VerInfo_Release> <VerInfo_Release>4</VerInfo_Release>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=0.9.4.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.2.0;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=0.9.4.1;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.2.0;Comments=</VerInfo_Keys>
<DCC_UnitSearchPath>C:\RADTOOLS\FastMM4;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_UnitSearchPath>C:\RADTOOLS\FastMM4;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode> <AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode>
......
...@@ -11,7 +11,6 @@ type ...@@ -11,7 +11,6 @@ type
TSuccessProc = reference to procedure; TSuccessProc = reference to procedure;
TLogoutProc = reference to procedure(AMessage: string = ''); TLogoutProc = reference to procedure(AMessage: string = '');
TUnauthorizedAccessProc = reference to procedure(AMessage: string); TUnauthorizedAccessProc = reference to procedure(AMessage: string);
TVersionCheckCallback = reference to procedure(Success: Boolean; ErrorMessage: string);
TListProc = reference to procedure; TListProc = reference to procedure;
TSelectProc = reference to procedure(AParam: string); TSelectProc = reference to procedure(AParam: string);
......
...@@ -4,7 +4,7 @@ interface ...@@ -4,7 +4,7 @@ interface
uses uses
System.SysUtils, System.Classes, WEBLib.Modules, XData.Web.Connection, System.SysUtils, System.Classes, WEBLib.Modules, XData.Web.Connection,
App.Types, App.Config, XData.Web.Client; XData.Web.Client, App.Types, App.Config;
type type
TDMConnection = class(TWebDataModule) TDMConnection = class(TWebDataModule)
...@@ -18,12 +18,12 @@ type ...@@ -18,12 +18,12 @@ type
private private
FUnauthorizedAccessProc: TUnauthorizedAccessProc; FUnauthorizedAccessProc: TUnauthorizedAccessProc;
FWsUrl: string; FWsUrl: string;
procedure VerifyVersion(SuccessProc: TSuccessProc);
public public
property WsUrl: string read FWsUrl; property WsUrl: string read FWsUrl;
const clientVersion = '9.4.0'; const clientVersion = '0.9.4.1';
procedure InitApp(SuccessProc: TSuccessProc; procedure InitApp(SuccessProc: TSuccessProc;
UnauthorizedAccessProc: TUnauthorizedAccessProc); UnauthorizedAccessProc: TUnauthorizedAccessProc);
procedure SetClientConfig(Callback: TVersionCheckCallback);
end; end;
var var
...@@ -57,7 +57,8 @@ procedure TDMConnection.ApiConnectionResponse( ...@@ -57,7 +57,8 @@ procedure TDMConnection.ApiConnectionResponse(
Args: TXDataWebConnectionResponse); Args: TXDataWebConnectionResponse);
begin begin
if Args.Response.StatusCode = 401 then if Args.Response.StatusCode = 401 then
FUnauthorizedAccessProc(Format('%d: %s',[Args.Response.StatusCode, Args.Response.ContentAsText])); FUnauthorizedAccessProc(Format('%d: %s',
[Args.Response.StatusCode, Args.Response.ContentAsText]));
end; end;
procedure TDMConnection.AuthConnectionError(Error: TXDataWebConnectionError); procedure TDMConnection.AuthConnectionError(Error: TXDataWebConnectionError);
...@@ -79,7 +80,11 @@ procedure TDMConnection.InitApp(SuccessProc: TSuccessProc; ...@@ -79,7 +80,11 @@ procedure TDMConnection.InitApp(SuccessProc: TSuccessProc;
if Config.WsUrl <> '' then if Config.WsUrl <> '' then
FWsUrl := Config.WsUrl; FWsUrl := Config.WsUrl;
AuthConnection.Open(SuccessProc); AuthConnection.Open(
procedure
begin
VerifyVersion(SuccessProc);
end);
end; end;
begin begin
...@@ -87,8 +92,7 @@ begin ...@@ -87,8 +92,7 @@ begin
LoadConfig(@ConfigLoaded); LoadConfig(@ConfigLoaded);
end; end;
procedure TDMConnection.SetClientConfig(Callback: TVersionCheckCallback); procedure TDMConnection.VerifyVersion(SuccessProc: TSuccessProc);
begin begin
XDataWebClient1.Connection := AuthConnection; XDataWebClient1.Connection := AuthConnection;
...@@ -100,15 +104,19 @@ begin ...@@ -100,15 +104,19 @@ begin
begin begin
jsonResult := TJSObject(Response.Result); jsonResult := TJSObject(Response.Result);
if jsonResult.HasOwnProperty('error') then if Assigned(jsonResult) and jsonResult.HasOwnProperty('error') then
error := string(jsonResult['error']) error := string(jsonResult['error'])
else else
error := ''; error := '';
if error <> '' then if error <> '' then
Callback(False, error) TFViewErrorPage.Display(error)
else else
Callback(True, ''); SuccessProc;
end,
procedure(Error: TXDataClientError)
begin
TFViewErrorPage.Display(Error.ErrorMessage);
end); end);
end; end;
......
...@@ -15,6 +15,7 @@ function FormatPhoneNumber(PhoneNumber: string): string; ...@@ -15,6 +15,7 @@ function FormatPhoneNumber(PhoneNumber: string): string;
procedure ApplyReportTitle(CurrentReportType: string); procedure ApplyReportTitle(CurrentReportType: string);
procedure ShowToast(const MessageText: string; const ToastType: string = 'success'); procedure ShowToast(const MessageText: string; const ToastType: string = 'success');
procedure ShowConfirmationModal(msg, leftLabel, rightLabel: string; ConfirmProc: TProc<Boolean>); procedure ShowConfirmationModal(msg, leftLabel, rightLabel: string; ConfirmProc: TProc<Boolean>);
procedure ShowInformationModal(const Title, MessageText: string);
// function FormatDollarValue(ValueStr: string): string; // function FormatDollarValue(ValueStr: string): string;
...@@ -220,6 +221,28 @@ begin ...@@ -220,6 +221,28 @@ begin
end; end;
procedure ShowInformationModal(const Title, MessageText: string);
begin
asm
var modal = document.getElementById('main_information_modal');
var title = document.getElementById('main_information_modal_title');
var body = document.getElementById('main_information_modal_body');
if (!modal) return;
if (title) title.innerText = Title;
if (body) body.innerText = MessageText;
if (modal.parentNode !== document.body) {
document.body.appendChild(modal);
}
var bsModal = bootstrap.Modal.getOrCreateInstance(modal);
bsModal.show();
end;
end;
function CalculateAge(DateOfBirth: TDateTime): Integer; function CalculateAge(DateOfBirth: TDateTime): Integer;
var var
Today, BirthDate: TJSDate; Today, BirthDate: TJSDate;
......
<div class="container"> <div class="container">
<br /> <div class="row justify-content-center mt-5">
<div class="col-12 col-sm-10 col-md-8 col-lg-6">
<div class="card shadow-sm border-danger">
<div class="panel panel-red"> <div id="view.errorpage.title"
<div id="view.errorpage.title" class="panel-heading"> class="card-header bg-danger text-white fw-semibold">
Error Page Error
</div> </div>
<div id="view.errorpage.message" class="panel-body"> <div class="card-body">
<div id="view.errorpage.message"
class="text-danger">
Message Message
</div> </div>
</div>
<div class="card-footer bg-light text-end">
<a href="."
class="btn btn-outline-danger btn-sm">
Reload web application
</a>
</div>
<div class="panel-footer"> </div>
<a href=".">Reload web application</a>
</div> </div>
</div> </div>
</div> </div>
...@@ -52,8 +52,9 @@ ...@@ -52,8 +52,9 @@
Login Login
</button> </button>
</div> </div>
<div class="card-footer text-muted small"> <div class="card-footer text-muted small d-flex justify-content-between">
Please use your lems username &amp; password to login. <span>Please use your lems username &amp; password to login.</span>
<span id="view.login.version" class="opacity-75"></span>
</div> </div>
</div> </div>
</div> </div>
......
...@@ -4,7 +4,7 @@ interface ...@@ -4,7 +4,7 @@ interface
uses uses
System.SysUtils, System.Classes, WEBLib.Graphics, WEBLib.Controls, WEBLib.Forms, WEBLib.Dialogs, System.SysUtils, System.Classes, WEBLib.Graphics, WEBLib.Controls, WEBLib.Forms, WEBLib.Dialogs,
Vcl.Controls, Vcl.StdCtrls, WEBLib.StdCtrls, WEBLib.JSON, Vcl.Controls, Vcl.StdCtrls, WEBLib.StdCtrls, WEBLib.JSON, Web,
JS, XData.Web.Connection, WEBLib.ExtCtrls, JS, XData.Web.Connection, WEBLib.ExtCtrls,
App.Types, ConnectionModule, XData.Web.Client; App.Types, ConnectionModule, XData.Web.Client;
...@@ -67,8 +67,14 @@ begin ...@@ -67,8 +67,14 @@ begin
end; end;
procedure TFViewLogin.WebFormCreate(Sender: TObject); procedure TFViewLogin.WebFormCreate(Sender: TObject);
var
el: TJSElement;
begin begin
GetAgencyConfigList; GetAgencyConfigList;
el := Document.getElementById('view.login.version');
if Assigned(el) then
TJSHtmlElement(el).innerText := 'v' + TDMConnection.clientVersion;
GetAgencyConfigList();
if FMessage <> '' then if FMessage <> '' then
ShowNotification(FMessage) ShowNotification(FMessage)
else else
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
<div class="d-flex align-items-center gap-2 ms-auto"> <div class="d-flex align-items-center gap-2 ms-auto">
<span id="view.main.lblconnection" class="navbar-text text-light small"></span> <span id="view.main.lblconnection" class="navbar-text text-light small"></span>
<button id="btn_devices" type="button" class="btn btn-outline-light btn-sm d-none">Devices</button> <button id="btn_devices" type="button" class="btn btn-outline-light btn-sm d-none">Devices</button>
<span id="view.main.version" class="navbar-text text-light small opacity-75"></span>
<button id="btn_logout" type="button" class="btn btn-outline-light btn-sm">Logout</button> <button id="btn_logout" type="button" class="btn btn-outline-light btn-sm">Logout</button>
</div> </div>
</div> </div>
...@@ -79,6 +80,23 @@ ...@@ -79,6 +80,23 @@
</nav> </nav>
</div> </div>
<!-- Information modal -->
<div class="modal fade" id="main_information_modal" tabindex="-1"
aria-labelledby="main_information_modal_title" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-sm mx-auto px-3">
<div class="modal-content shadow-lg">
<div class="modal-header">
<h5 class="modal-title" id="main_information_modal_title">Information</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body fs-6 fw-bold" id="main_information_modal_body"></div>
<div class="modal-footer">
<button type="button" class="btn btn-primary w-100" data-bs-dismiss="modal">OK</button>
</div>
</div>
</div>
</div>
<!-- Spinner --> <!-- Spinner -->
<div id="spinner" class="position-absolute top-50 start-50 translate-middle d-none"> <div id="spinner" class="position-absolute top-50 start-50 translate-middle d-none">
<div class="lds-roller"> <div class="lds-roller">
......
...@@ -124,9 +124,15 @@ const ...@@ -124,9 +124,15 @@ const
procedure TFViewMain.WebFormCreate(Sender: TObject); procedure TFViewMain.WebFormCreate(Sender: TObject);
var var
userName: string; userName: string;
el: TJSElement;
begin begin
userName := JS.toString(AuthService.TokenPayload.Properties['user_name']); userName := JS.toString(AuthService.TokenPayload.Properties['user_name']);
lblUsername.Caption := ' ' + userName.ToLower + ' '; lblUsername.Caption := ' ' + userName.ToLower + ' ';
el := Document.getElementById('view.main.version');
if Assigned(el) then
TJSHtmlElement(el).innerText := 'v' + TDMConnection.clientVersion;
FChildForm := nil; FChildForm := nil;
FDetailsForm := nil; FDetailsForm := nil;
FArchiveForm := nil; FArchiveForm := nil;
......
...@@ -37,6 +37,9 @@ type ...@@ -37,6 +37,9 @@ type
FPendingFocusCoord: TTMSFNCMapsCoordinateRec; FPendingFocusCoord: TTMSFNCMapsCoordinateRec;
FPendingFocusZoom: Integer; FPendingFocusZoom: Integer;
FDoFocusZoom: Boolean; FDoFocusZoom: Boolean;
FPendingFocusMarkerData: string;
FPendingWsUnitMapData: TJSArray;
FPendingWsComplaintMapData: TJSArray;
FGeoJsonLoadStep: Integer; FGeoJsonLoadStep: Integer;
[async] procedure LoadPointsAsync(showBusy: Boolean); [async] procedure LoadPointsAsync(showBusy: Boolean);
...@@ -307,6 +310,22 @@ begin ...@@ -307,6 +310,22 @@ begin
Console.Log('Complaints XData error: ' + E.ErrorResult.ErrorMessage); Console.Log('Complaints XData error: ' + E.ErrorResult.ErrorMessage);
end; end;
// A WebSocket snapshot received while the HTTP requests were in flight is
// newer than those responses, so use the latest pushed data for the map.
if Assigned(FPendingWsUnitMapData) then
begin
unitsData := FPendingWsUnitMapData;
FPendingWsUnitMapData := nil;
FUnitsLoaded := True;
end;
if Assigned(FPendingWsComplaintMapData) then
begin
complaintsData := FPendingWsComplaintMapData;
FPendingWsComplaintMapData := nil;
FComplaintsLoaded := True;
end;
// --- Place markers (BeginUpdate wraps both so the map redraws once) ------ // --- Place markers (BeginUpdate wraps both so the map redraws once) ------
lfMap.BeginUpdate; lfMap.BeginUpdate;
try try
...@@ -553,8 +572,13 @@ end; ...@@ -553,8 +572,13 @@ end;
procedure TFViewMap.ApplyWsUnitMapData(aData: TJSArray); procedure TFViewMap.ApplyWsUnitMapData(aData: TJSArray);
begin begin
// Skip if the map is still initialising or an HTTP load is in flight. if FLoadingPoints then
if (not Assigned(mapFilters)) or FLoadingPoints then begin
FPendingWsUnitMapData := aData;
Exit;
end;
if not Assigned(mapFilters) then
Exit; Exit;
lfMap.BeginUpdate; lfMap.BeginUpdate;
...@@ -570,7 +594,13 @@ end; ...@@ -570,7 +594,13 @@ end;
procedure TFViewMap.ApplyWsComplaintMapData(aData: TJSArray); procedure TFViewMap.ApplyWsComplaintMapData(aData: TJSArray);
begin begin
if (not Assigned(mapFilters)) or FLoadingPoints then if FLoadingPoints then
begin
FPendingWsComplaintMapData := aData;
Exit;
end;
if not Assigned(mapFilters) then
Exit; Exit;
lfMap.BeginUpdate; lfMap.BeginUpdate;
...@@ -641,15 +671,47 @@ begin ...@@ -641,15 +671,47 @@ begin
end; end;
procedure TFViewMap.tmrLocateTimer(Sender: TObject); procedure TFViewMap.tmrLocateTimer(Sender: TObject);
var
i: Integer;
markerFound: Boolean;
missingTarget: string;
begin begin
tmrLocate.Enabled := False; tmrLocate.Enabled := False;
if not FDoFocusZoom then if not FDoFocusZoom then
Exit; Exit;
if FPendingFocusMarkerData <> '' then
begin
markerFound := False;
for i := 0 to lfMap.Markers.Count - 1 do
if SameText(lfMap.Markers[i].DataString, FPendingFocusMarkerData) or
StartsText(FPendingFocusMarkerData + '|', lfMap.Markers[i].DataString) then
begin
markerFound := True;
Break;
end;
if not markerFound then
begin
missingTarget := FPendingFocusMarkerData;
FPendingFocusMarkerData := '';
FDoFocusZoom := False;
if StartsText('unit|', missingTarget) then
ShowInformationModal('No Longer Available',
'This unit is no longer available on the map.')
else if StartsText('complaint|', missingTarget) then
ShowInformationModal('No Longer Available',
'This complaint is no longer active on the map.');
Exit;
end;
end;
lfMap.SetCenterCoordinate(FPendingFocusCoord); lfMap.SetCenterCoordinate(FPendingFocusCoord);
lfMap.SetZoomLevel(FPendingFocusZoom); lfMap.SetZoomLevel(FPendingFocusZoom);
FPendingFocusMarkerData := '';
FDoFocusZoom := False; FDoFocusZoom := False;
end; end;
...@@ -666,6 +728,7 @@ begin ...@@ -666,6 +728,7 @@ begin
FPendingFocusCoord := coord; FPendingFocusCoord := coord;
FPendingFocusZoom := 17; FPendingFocusZoom := 17;
FDoFocusZoom := True; FDoFocusZoom := True;
FPendingFocusMarkerData := '';
tmrLocate.Interval := 250; tmrLocate.Interval := 250;
tmrLocate.Enabled := True; tmrLocate.Enabled := True;
...@@ -674,6 +737,10 @@ end; ...@@ -674,6 +737,10 @@ end;
procedure TFViewMap.FocusUnit(const unitId: string); procedure TFViewMap.FocusUnit(const unitId: string);
begin begin
tmrLocate.Enabled := False;
FDoFocusZoom := False;
FPendingFocusMarkerData := '';
FPendingComplaintId := '';
FPendingUnitId := Trim(unitId); FPendingUnitId := Trim(unitId);
if mapFilters <> nil then if mapFilters <> nil then
LoadPointsAsync(True); LoadPointsAsync(True);
...@@ -682,6 +749,10 @@ end; ...@@ -682,6 +749,10 @@ end;
procedure TFViewMap.FocusComplaint(const complaintId: string); procedure TFViewMap.FocusComplaint(const complaintId: string);
begin begin
tmrLocate.Enabled := False;
FDoFocusZoom := False;
FPendingFocusMarkerData := '';
FPendingUnitId := '';
FPendingComplaintId := Trim(complaintId); FPendingComplaintId := Trim(complaintId);
if mapFilters <> nil then if mapFilters <> nil then
LoadPointsAsync(True); LoadPointsAsync(True);
...@@ -713,6 +784,7 @@ begin ...@@ -713,6 +784,7 @@ begin
FPendingFocusCoord := coord; FPendingFocusCoord := coord;
FPendingFocusZoom := 17; FPendingFocusZoom := 17;
FDoFocusZoom := True; FDoFocusZoom := True;
FPendingFocusMarkerData := targetDs;
tmrLocate.Interval := 250; tmrLocate.Interval := 250;
tmrLocate.Enabled := True; tmrLocate.Enabled := True;
...@@ -722,8 +794,15 @@ begin ...@@ -722,8 +794,15 @@ begin
end; end;
end; end;
if found then
FPendingUnitId := ''; FPendingUnitId := '';
if not found then
begin
FPendingFocusMarkerData := '';
FDoFocusZoom := False;
ShowInformationModal('No Longer Available',
'This unit is no longer available on the map.');
end;
end; end;
procedure TFViewMap.ApplyPendingComplaintFocus; procedure TFViewMap.ApplyPendingComplaintFocus;
...@@ -751,6 +830,7 @@ begin ...@@ -751,6 +830,7 @@ begin
FPendingFocusCoord := coord; FPendingFocusCoord := coord;
FPendingFocusZoom := 17; FPendingFocusZoom := 17;
FDoFocusZoom := True; FDoFocusZoom := True;
FPendingFocusMarkerData := targetDs;
tmrLocate.Interval := 250; tmrLocate.Interval := 250;
tmrLocate.Enabled := True; tmrLocate.Enabled := True;
...@@ -760,8 +840,15 @@ begin ...@@ -760,8 +840,15 @@ begin
end; end;
end; end;
if found then
FPendingComplaintId := ''; FPendingComplaintId := '';
if not found then
begin
FPendingFocusMarkerData := '';
FDoFocusZoom := False;
ShowInformationModal('No Longer Available',
'This complaint is no longer active on the map.');
end;
end; end;
......
{ {
"AuthUrl" : "http://localhost:2009/emimobile/auth/", "AuthUrl" : "http://localhost:2001/emsys/emimobile/auth/",
"ApiUrl" : "http://localhost:2009/emimobile/api/", "ApiUrl" : "http://localhost:2001/emsys/emimobile/api/",
"AppUrl" : "http://localhost:2009/emimobile/app/", "AppUrl" : "http://localhost:2001/emsys/emimobile/app/",
"WsUrl": "ws://localhost:8091/" "WsUrl": "ws://localhost:8091/"
} }
...@@ -4,7 +4,6 @@ span.card { ...@@ -4,7 +4,6 @@ span.card {
border: none; border: none;
} }
/* --- Login Screen Styling --- */ /* --- Login Screen Styling --- */
.login-card { .login-card {
display: inline-block; /* Or use d-flex on the parent to center it */ display: inline-block; /* Or use d-flex on the parent to center it */
...@@ -80,8 +79,18 @@ html, body { ...@@ -80,8 +79,18 @@ html, body {
} }
} }
.tab-hidden { display: none !important; } @supports (-webkit-touch-callout: none) {
/* CSS specific to iOS devices */
span.card {
border: none;
/*padding-top: 2em !important;*/
}
.vh-100 {
height: 94vh !important;
}
}
.tab-hidden { display: none !important; }
.summary-chevron-icon { .summary-chevron-icon {
width: 1rem; width: 1rem;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"/> <meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1, viewport-fit=cover" name="viewport"/> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<noscript>Your browser does not support JavaScript!</noscript> <noscript>Your browser does not support JavaScript!</noscript>
<link href="data:;base64,=" rel="icon"/> <link href="data:;base64,=" rel="icon"/>
<title>emiMobile</title> <title>emiMobile</title>
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
<link crossorigin="anonymous" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.7/dist/css/bootstrap.min.css" rel="stylesheet"/> <link crossorigin="anonymous" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.7/dist/css/bootstrap.min.css" rel="stylesheet"/>
<!-- App --> <!-- App -->
<script src="$(ProjectName).js" type="text/javascript"></script> <script src="wcEmiMobile.js" type="text/javascript"></script>
<!-- App styles --> <!-- App styles -->
<style></style> <style></style>
...@@ -29,6 +29,28 @@ ...@@ -29,6 +29,28 @@
</head> </head>
<body> <body>
<script type="text/javascript">rtl.run();</script> <script type="text/javascript">rtl.run();</script>
<script>
function setIOSDivHeight() {
const targetDiv = document.querySelector('body'); // Replace with your div ID
if (targetDiv) {
// Get the inner height of the window
const height = window.innerHeight ;
// Apply the height in pixels
targetDiv.style.maxHeight = (height - 100) + 'px';
//alert("set height: " + (height - 100));
}
}
// 2. Attach event listeners for Load, Resize, and Scroll
// Scroll is critical for iOS to handle the address bar expanding/collapsing
const isIOSUA = /iPad|iPhone|iPod/.test(navigator.userAgent);
if(isIOSUA){
window.addEventListener('load', setIOSDivHeight);
window.addEventListener('resize', setIOSDivHeight);
window.addEventListener('scroll', setIOSDivHeight);
}
</script>
</body> </body>
</html> </html>
...@@ -40,3 +62,4 @@ ...@@ -40,3 +62,4 @@
...@@ -3,13 +3,13 @@ ...@@ -3,13 +3,13 @@
<ProjectGuid>{DB6F5DBF-7E4B-45DA-AFFA-6C8DF15BA740}</ProjectGuid> <ProjectGuid>{DB6F5DBF-7E4B-45DA-AFFA-6C8DF15BA740}</ProjectGuid>
<ProjectVersion>20.4</ProjectVersion> <ProjectVersion>20.4</ProjectVersion>
<FrameworkType>VCL</FrameworkType> <FrameworkType>VCL</FrameworkType>
<MainSource>webEmiMobile.dpr</MainSource> <MainSource>wcEmiMobile.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Debug</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
<TargetedPlatforms>1</TargetedPlatforms> <TargetedPlatforms>1</TargetedPlatforms>
<AppType>Application</AppType> <AppType>Application</AppType>
<ProjectName Condition="'$(ProjectName)'==''">webEmiMobile</ProjectName> <ProjectName Condition="'$(ProjectName)'==''">wcEmiMobile</ProjectName>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''"> <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base> <Base>true</Base>
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace>
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon> <Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
<Icns_MainIcns>$(BDS)\bin\delphi_PROJECTICNS.icns</Icns_MainIcns> <Icns_MainIcns>$(BDS)\bin\delphi_PROJECTICNS.icns</Icns_MainIcns>
<SanitizedProjectName>webEmiMobile</SanitizedProjectName> <SanitizedProjectName>wcEmiMobile</SanitizedProjectName>
<VerInfo_Locale>1046</VerInfo_Locale> <VerInfo_Locale>1046</VerInfo_Locale>
<TMSWebProject>2</TMSWebProject> <TMSWebProject>2</TMSWebProject>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.802;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;LastCompiledTime=2018/07/25 12:57:53</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.802;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;LastCompiledTime=2018/07/25 12:57:53</VerInfo_Keys>
...@@ -91,15 +91,16 @@ ...@@ -91,15 +91,16 @@
<DCC_RemoteDebug>false</DCC_RemoteDebug> <DCC_RemoteDebug>false</DCC_RemoteDebug>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=0.9.4.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.3.0;Comments=;LastCompiledTime=2018/08/27 15:18:29</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=0.9.4.1;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=0.9.3.0;Comments=;LastCompiledTime=2018/08/27 15:18:29</VerInfo_Keys>
<AppDPIAwarenessMode>PerMonitor</AppDPIAwarenessMode> <AppDPIAwarenessMode>PerMonitor</AppDPIAwarenessMode>
<VerInfo_MinorVer>9</VerInfo_MinorVer> <VerInfo_MinorVer>9</VerInfo_MinorVer>
<VerInfo_MajorVer>0</VerInfo_MajorVer> <VerInfo_MajorVer>0</VerInfo_MajorVer>
<VerInfo_Release>4</VerInfo_Release> <VerInfo_Release>4</VerInfo_Release>
<TMSWebSingleInstance>1</TMSWebSingleInstance>
<VerInfo_Build>1</VerInfo_Build>
<TMSWebBrowser>1</TMSWebBrowser> <TMSWebBrowser>1</TMSWebBrowser>
<TMSUseJSDebugger>2</TMSUseJSDebugger>
<TMSWebOutputPath>..\emiMobileServer\bin\static</TMSWebOutputPath> <TMSWebOutputPath>..\emiMobileServer\bin\static</TMSWebOutputPath>
<TMSWebSingleInstance>1</TMSWebSingleInstance> <TMSUseJSDebugger>2</TMSUseJSDebugger>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''"> <PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols> <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
...@@ -204,664 +205,238 @@ ...@@ -204,664 +205,238 @@
<None Include="css\app.css"/> <None Include="css\app.css"/>
<None Include="css\spinner.css"/> <None Include="css\spinner.css"/>
<None Include="config\config.json"/> <None Include="config\config.json"/>
<None Include="assets\bpddistricts-updated.geojson"/>
<RcItem Include="assets\markers\agencyassist_attached.png"> <RcItem Include="assets\markers\agencyassist_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_1</ResourceId>
</RcItem>
<RcItem Include="assets\markers\agencyassist_notattached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_2</ResourceId>
</RcItem>
<RcItem Include="assets\markers\agencyassist_onscene.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_3</ResourceId>
</RcItem>
<RcItem Include="assets\markers\alarm_attached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_4</ResourceId>
</RcItem>
<RcItem Include="assets\markers\alarm_notattached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_5</ResourceId>
</RcItem>
<RcItem Include="assets\markers\alarm_onscene.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_6</ResourceId>
</RcItem>
<RcItem Include="assets\markers\assault_attached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_7</ResourceId>
</RcItem>
<RcItem Include="assets\markers\assault_notattached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_8</ResourceId>
</RcItem>
<RcItem Include="assets\markers\assault_onscene.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_9</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\agencyassist_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_10</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\agencyassist_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_11</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\agencyassist_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_12</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\agencyassist_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_13</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\agencyassist_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_14</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\alarm_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_15</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\alarm_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_16</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\alarm_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_17</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\alarm_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_18</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\alarm_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_19</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\assault_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_20</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\assault_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_21</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\assault_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_22</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\assault_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_23</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\assault_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_24</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_25</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_26</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_27</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_28</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_29</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\caraccident_attached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_30</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_A.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_31</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_B.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_32</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_C.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_33</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_D.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_34</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_default.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_35</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_E.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_36</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_ems.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_37</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_fire.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_38</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_police.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_39</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\car_X.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_40</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\deadbody_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_41</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\deadbody_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_42</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\deadbody_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_43</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\deadbody_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_44</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\deadbody_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_45</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_46</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_47</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_48</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_49</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_50</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_51</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_attached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_52</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_notattached.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_53</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\default_onscene.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_54</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\directedpatrol_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_55</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\directedpatrol_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_56</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\directedpatrol_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_57</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\directedpatrol_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_58</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\directedpatrol_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_59</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\fire_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_60</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\fire_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_61</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\fire_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_62</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\fire_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_63</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\fire_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_64</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\gun_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_65</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\gun_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_66</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\gun_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_67</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\gun_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_68</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\gun_5.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_69</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\home_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_70</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\home_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_71</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\home_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_72</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\home_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_73</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\home_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_74</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\location_dot.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_75</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\medical_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_76</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\medical_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_77</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\medical_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_78</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\medical_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_79</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\medical_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_80</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\missingperson_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_81</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\missingperson_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_82</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\missingperson_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_83</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\missingperson_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_84</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\missingperson_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_85</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\narcotics_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_86</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\narcotics_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_87</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\narcotics_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_88</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\narcotics_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_89</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\narcotics_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_90</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\noise_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_91</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\noise_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_92</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\noise_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_93</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\noise_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_94</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\noise_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_95</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\robbery_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_96</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\robbery_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_97</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\robbery_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_98</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\robbery_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_99</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\robbery_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_100</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\school_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_101</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\school_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_102</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\school_3.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_103</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\school_4.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_104</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\school_5-9.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_105</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\suspicious_1.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_106</ResourceId>
</RcItem>
<RcItem Include="assets\markers\Buffalo Markers\suspicious_2.png">
<ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_107</ResourceId> <ResourceId>PngImage_107</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\suspicious_3.png"> <RcItem Include="assets\markers\agencyassist_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_108</ResourceId> <ResourceId>PngImage_108</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\suspicious_4.png"> <RcItem Include="assets\markers\agencyassist_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_109</ResourceId> <ResourceId>PngImage_109</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\suspicious_5-9.png"> <RcItem Include="assets\markers\alarm_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_110</ResourceId> <ResourceId>PngImage_110</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\traffic_1.png"> <RcItem Include="assets\markers\alarm_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_111</ResourceId> <ResourceId>PngImage_111</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\traffic_2.png"> <RcItem Include="assets\markers\alarm_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_112</ResourceId> <ResourceId>PngImage_112</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\traffic_3.png"> <RcItem Include="assets\markers\assault_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_113</ResourceId> <ResourceId>PngImage_113</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\traffic_4.png"> <RcItem Include="assets\markers\assault_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_114</ResourceId> <ResourceId>PngImage_114</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\Buffalo Markers\traffic_5-9.png"> <RcItem Include="assets\markers\assault_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_115</ResourceId> <ResourceId>PngImage_115</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\caraccident_attached.png"> <RcItem Include="assets\markers\caraccident_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_116</ResourceId> <ResourceId>PngImage_222</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\caraccident_notattached.png"> <RcItem Include="assets\markers\caraccident_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_117</ResourceId> <ResourceId>PngImage_223</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\caraccident_onscene.png"> <RcItem Include="assets\markers\caraccident_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_118</ResourceId> <ResourceId>PngImage_224</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\car_default.png"> <RcItem Include="assets\markers\car_default.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_119</ResourceId> <ResourceId>PngImage_225</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\car_ems.png"> <RcItem Include="assets\markers\car_ems.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_120</ResourceId> <ResourceId>PngImage_226</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\car_fire.png"> <RcItem Include="assets\markers\car_fire.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_121</ResourceId> <ResourceId>PngImage_227</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\car_police.png"> <RcItem Include="assets\markers\car_police.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_122</ResourceId> <ResourceId>PngImage_228</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\car_X.png"> <RcItem Include="assets\markers\car_X.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_123</ResourceId> <ResourceId>PngImage_229</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\deadbody_attached.png"> <RcItem Include="assets\markers\deadbody_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_124</ResourceId> <ResourceId>PngImage_230</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\deadbody_notattached.png"> <RcItem Include="assets\markers\deadbody_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_125</ResourceId> <ResourceId>PngImage_231</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\deadbody_onscene.png"> <RcItem Include="assets\markers\deadbody_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_126</ResourceId> <ResourceId>PngImage_232</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\default.png"> <RcItem Include="assets\markers\default.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_127</ResourceId> <ResourceId>PngImage_233</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\default_attached.png"> <RcItem Include="assets\markers\default_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_128</ResourceId> <ResourceId>PngImage_234</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\default_notattached.png"> <RcItem Include="assets\markers\default_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_129</ResourceId> <ResourceId>PngImage_235</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\default_onscene.png"> <RcItem Include="assets\markers\default_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_130</ResourceId> <ResourceId>PngImage_236</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\directedpatrol_attached.png"> <RcItem Include="assets\markers\directedpatrol_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_131</ResourceId> <ResourceId>PngImage_237</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\directedpatrol_notattached.png"> <RcItem Include="assets\markers\directedpatrol_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_132</ResourceId> <ResourceId>PngImage_238</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\directedpatrol_onscene.png"> <RcItem Include="assets\markers\directedpatrol_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_133</ResourceId> <ResourceId>PngImage_239</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\fire_attached.png"> <RcItem Include="assets\markers\fire_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_134</ResourceId> <ResourceId>PngImage_240</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\fire_notattached.png"> <RcItem Include="assets\markers\fire_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_135</ResourceId> <ResourceId>PngImage_241</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\fire_onscene.png"> <RcItem Include="assets\markers\fire_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_136</ResourceId> <ResourceId>PngImage_242</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\gun_attached.png"> <RcItem Include="assets\markers\gun_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_137</ResourceId> <ResourceId>PngImage_243</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\gun_notattached.png"> <RcItem Include="assets\markers\gun_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_138</ResourceId> <ResourceId>PngImage_244</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\gun_onscene.png"> <RcItem Include="assets\markers\gun_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_139</ResourceId> <ResourceId>PngImage_245</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\location_dot.png"> <RcItem Include="assets\markers\location_dot.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_140</ResourceId> <ResourceId>PngImage_246</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\medical_attached.png"> <RcItem Include="assets\markers\medical_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_141</ResourceId> <ResourceId>PngImage_247</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\medical_notattached.png"> <RcItem Include="assets\markers\medical_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_142</ResourceId> <ResourceId>PngImage_248</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\medical_onscene.png"> <RcItem Include="assets\markers\medical_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_143</ResourceId> <ResourceId>PngImage_249</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\missingperson_attached.png"> <RcItem Include="assets\markers\missingperson_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_144</ResourceId> <ResourceId>PngImage_250</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\missingperson_notattached.png"> <RcItem Include="assets\markers\missingperson_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_145</ResourceId> <ResourceId>PngImage_251</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\missingperson_onscene.png"> <RcItem Include="assets\markers\missingperson_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_146</ResourceId> <ResourceId>PngImage_252</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\narcotics_attached.png"> <RcItem Include="assets\markers\narcotics_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_147</ResourceId> <ResourceId>PngImage_253</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\narcotics_notattached.png"> <RcItem Include="assets\markers\narcotics_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_148</ResourceId> <ResourceId>PngImage_254</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\narcotics_onscene.png"> <RcItem Include="assets\markers\narcotics_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_149</ResourceId> <ResourceId>PngImage_255</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\noise_attached.png"> <RcItem Include="assets\markers\noise_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_150</ResourceId> <ResourceId>PngImage_256</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\noise_notattached.png"> <RcItem Include="assets\markers\noise_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_151</ResourceId> <ResourceId>PngImage_257</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\noise_onscene.png"> <RcItem Include="assets\markers\noise_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_152</ResourceId> <ResourceId>PngImage_258</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\robbery_attached.png"> <RcItem Include="assets\markers\robbery_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_153</ResourceId> <ResourceId>PngImage_259</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\robbery_notattached.png"> <RcItem Include="assets\markers\robbery_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_154</ResourceId> <ResourceId>PngImage_260</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\robbery_onscene.png"> <RcItem Include="assets\markers\robbery_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_155</ResourceId> <ResourceId>PngImage_261</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\school_attached.png"> <RcItem Include="assets\markers\school_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_156</ResourceId> <ResourceId>PngImage_262</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\school_notattached.png"> <RcItem Include="assets\markers\school_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_157</ResourceId> <ResourceId>PngImage_263</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\school_onscene.png"> <RcItem Include="assets\markers\school_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_158</ResourceId> <ResourceId>PngImage_264</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\suspicious_attached.png"> <RcItem Include="assets\markers\suspicious_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_159</ResourceId> <ResourceId>PngImage_265</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\suspicious_notattached.png"> <RcItem Include="assets\markers\suspicious_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_160</ResourceId> <ResourceId>PngImage_266</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\suspicious_onscene.png"> <RcItem Include="assets\markers\suspicious_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_161</ResourceId> <ResourceId>PngImage_267</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\traffic_attached.png"> <RcItem Include="assets\markers\traffic_attached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_162</ResourceId> <ResourceId>PngImage_268</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\traffic_notattached.png"> <RcItem Include="assets\markers\traffic_notattached.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_163</ResourceId> <ResourceId>PngImage_269</ResourceId>
</RcItem> </RcItem>
<RcItem Include="assets\markers\traffic_onscene.png"> <RcItem Include="assets\markers\traffic_onscene.png">
<ResourceType>RCDATA</ResourceType> <ResourceType>RCDATA</ResourceType>
<ResourceId>PngImage_164</ResourceId> <ResourceId>PngImage_270</ResourceId>
</RcItem> </RcItem>
<None Include="assets\orleanscounty.geojson"/>
<None Include="assets\wyomingtowns.geojson"/> <None Include="assets\wyomingtowns.geojson"/>
<None Include="assets\wyomingvillages.geojson"/> <None Include="assets\wyomingvillages.geojson"/>
<BuildConfiguration Include="Base"> <BuildConfiguration Include="Base">
...@@ -882,7 +457,7 @@ ...@@ -882,7 +457,7 @@
<BorlandProject> <BorlandProject>
<Delphi.Personality> <Delphi.Personality>
<Source> <Source>
<Source Name="MainSource">webEmiMobile.dpr</Source> <Source Name="MainSource">wcEmiMobile.dpr</Source>
</Source> </Source>
<Excluded_Packages> <Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\bcboffice2k370.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\bcboffice2k370.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
...@@ -956,783 +531,141 @@ ...@@ -956,783 +531,141 @@
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="Win32\Debug\webCharms.exe" Configuration="Debug" Class="ProjectOutput"/> <DeployFile LocalName="Win32\Debug\wcEmiMobile.exe" Configuration="Debug" Class="ProjectOutput">
<DeployFile LocalName="Win32\Debug\webEmiMobile.exe" Configuration="Debug" Class="ProjectOutput">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteName>webEmiMobile.exe</RemoteName> <RemoteName>wcEmiMobile.exe</RemoteName>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="Win32\Debug\webCharms.exe" Configuration="Debug" Class="ProjectOutput"/>
<DeployFile LocalName="Win32\Debug\webEnvoyCalls.exe" Configuration="Debug" Class="ProjectOutput"/> <DeployFile LocalName="Win32\Debug\webEnvoyCalls.exe" Configuration="Debug" Class="ProjectOutput"/>
<DeployFile LocalName="assets\bpddistricts-updated.geojson" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\agencyassist_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\agencyassist_1.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\agencyassist_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\agencyassist_2.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\agencyassist_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\agencyassist_3.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\alarm_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\agencyassist_4.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\alarm_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\agencyassist_5-9.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\alarm_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\alarm_1.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\assault_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\alarm_2.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\assault_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\alarm_3.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\assault_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\alarm_4.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\car_X.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\alarm_5-9.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\car_default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\assault_1.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\car_ems.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\assault_2.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\car_fire.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\assault_3.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\car_police.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\assault_4.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\caraccident_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\assault_5-9.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\caraccident_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_A.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\caraccident_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_B.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\deadbody_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_C.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\deadbody_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_D.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\deadbody_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_E.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_X.png" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\markers\default_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_ems.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_fire.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\car_police.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\caraccident_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\deadbody_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\deadbody_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\deadbody_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\deadbody_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\deadbody_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\default_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\directedpatrol_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\directedpatrol_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\directedpatrol_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\directedpatrol_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\directedpatrol_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\fire_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\fire_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\fire_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\fire_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\fire_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\gun_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\gun_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\gun_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\gun_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\gun_5.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\home_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\home_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\home_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\home_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\home_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\location_dot.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\medical_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\medical_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\medical_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\medical_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\medical_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\missingperson_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\missingperson_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\missingperson_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\missingperson_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\missingperson_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\narcotics_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\narcotics_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\narcotics_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\narcotics_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\narcotics_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\noise_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\noise_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\noise_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\noise_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\noise_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\robbery_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\robbery_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\robbery_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\robbery_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\robbery_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\school_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\school_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\school_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\school_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\school_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\suspicious_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\suspicious_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\suspicious_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\suspicious_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\suspicious_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\traffic_1.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\traffic_2.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\traffic_3.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\traffic_4.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\Buffalo Markers\traffic_5-9.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\agencyassist_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\agencyassist_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\agencyassist_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\alarm_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\alarm_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\alarm_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\assault_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\assault_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\assault_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\car_X.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\car_default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\car_ems.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\car_fire.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\car_police.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\caraccident_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\caraccident_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\caraccident_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\deadbody_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\deadbody_notattached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\deadbody_onscene.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\default.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\markers\default_attached.png" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
...@@ -1954,12 +887,6 @@ ...@@ -1954,12 +887,6 @@
<Overwrite>true</Overwrite> <Overwrite>true</Overwrite>
</Platform> </Platform>
</DeployFile> </DeployFile>
<DeployFile LocalName="assets\orleanscounty.geojson" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="assets\wyomingtowns.geojson" Configuration="Debug" Class="ProjectFile"> <DeployFile LocalName="assets\wyomingtowns.geojson" Configuration="Debug" Class="ProjectFile">
<Platform Name="Win32"> <Platform Name="Win32">
<RemoteDir>.\</RemoteDir> <RemoteDir>.\</RemoteDir>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment