diff --git a/library/fhir4/fhir4_ips.pas b/library/fhir4/fhir4_ips.pas
index 2ecccecdb..b0285778b 100644
--- a/library/fhir4/fhir4_ips.pas
+++ b/library/fhir4/fhir4_ips.pas
@@ -235,7 +235,7 @@ function TIPSGenerator.makePatient: TFhirPatient;
x : TFhirXHtmlNode;
ext : TFHIRExtension;
l : TFhirPatientCommunication;
- sg, cg, dg, tg, sp, cdp, dp, tp, sv, cdv, dv, tv : String;
+ s, sg, cg, dg, tg, sp, cdp, dp, tp, sv, cdv, dv, tv : String;
begin
if (params.has('gender')) then
begin
@@ -488,7 +488,7 @@ function TIPSGenerator.makePatient: TFhirPatient;
l.language.text := params['language'];
l.preferred := true;
if ((s = 'en') or (s = 'english')) then
- if (params.has('english') then
+ if (params.has('english')) then
begin
l := result.communicationList.Append;
l.language := TFHIRCodeableConcept.create;
diff --git a/library/fhir4/fhir4_utilities.pas b/library/fhir4/fhir4_utilities.pas
index f25c2c33d..1ad51fb58 100644
--- a/library/fhir4/fhir4_utilities.pas
+++ b/library/fhir4/fhir4_utilities.pas
@@ -4107,16 +4107,29 @@ function TFhirValueSetHelper.context: string;
result := result + gen(useContextList[i]);
end;
+function tail(url : String) : String;
+begin
+ if url.contains('/') then
+ result := url.subString(url.lastIndexOf('/')+1)
+ else if url.contains(':') then
+ result := url.subString(url.lastIndexOf(':')+1)
+ else
+ result := url;
+end;
+
function TFhirValueSetHelper.source: string;
var
ts : TStringList;
+ vs : TFhirCanonical;
comp : TFhirValueSetComposeInclude;
begin
ts := TStringList.Create;
try
ts.sorted := true;
+ ts.duplicates := dupIgnore;
if (compose <> nil) then
+ begin
for comp in compose.includeList do
begin
if comp.system <> '' then
@@ -4125,9 +4138,16 @@ function TFhirValueSetHelper.source: string;
begin
ts.add(csName(comp.system));
end;
- end;
+ end
+ else
+ for vs in comp.valueSetList do
+ ts.add('vs:'+tail(vs.value));
end;
- result := ts.commaText;
+ end;
+ if (ts.count = 0) then
+ result := 'unknown source'
+ else
+ result := ts.commaText;
finally
ts.free;
end;
diff --git a/server/database.pas b/server/database.pas
index 592e4c692..79d300f1f 100644
--- a/server/database.pas
+++ b/server/database.pas
@@ -3363,7 +3363,7 @@ function TFHIRNativeOperationEngine.scanId(request : TFHIRRequest; entry : TFHIR
else if entry.requestUrl <> '' then
id.Name := fullResourceUri(request.baseUrl, entry.requestUrl)
else
- id.Name := '??';
+ id.Name := '??id';
id.outcomeVersion := 1;
// figure out what kind of operation is involved here
diff --git a/server/endpoint_packages.pas b/server/endpoint_packages.pas
index 341bcf8da..dadcdf86c 100644
--- a/server/endpoint_packages.pas
+++ b/server/endpoint_packages.pas
@@ -661,7 +661,7 @@ function TFHIRPackageWebServer.interpretVersion(v: String): String;
else if (v.StartsWith('1')) then
result := 'R3'
else
- result := '??'
+ result := '??V'
end;
var
ts : TStringList;
@@ -815,7 +815,7 @@ function codeForKind(kind : integer): String;
fpkGroup : result := 'Group';
fpkExamples : result := 'Examples';
else
- result := '?? ('+inttostr(kind)+')';
+ result := '??kind ('+inttostr(kind)+')';
end;
end;
diff --git a/server/endpoint_storage.pas b/server/endpoint_storage.pas
index 1e5b9f5d6..97fdea052 100644
--- a/server/endpoint_storage.pas
+++ b/server/endpoint_storage.pas
@@ -1199,7 +1199,7 @@ function TStorageWebEndpoint.HandleRequest(AContext: TIdContext; request: TIdHTT
Begin
// tt.track('req');
start := GetTickCount64;
- result := '??';
+ result := '??eps';
noErrCode := false;
mode := opmRestful;
cache := false;
@@ -2465,7 +2465,7 @@ function TStorageWebEndpoint.getReferencesByType(t: String): String;
// else if entry.resource is TFhirOrganization then
// b.Append(TFhirOrganization(entry.resource).name)
// else
- b.Append('??');
+ b.Append('??hn');
b.Append(' (');
b.Append(entry.resource.fhirType);
b.Append('/');
diff --git a/server/endpoint_xig.pas b/server/endpoint_xig.pas
index 8960c83a5..82628db2f 100644
--- a/server/endpoint_xig.pas
+++ b/server/endpoint_xig.pas
@@ -640,7 +640,7 @@ procedure TXIGServerEndPoint.downloadAndReload;
function TXIGServerEndPoint.dateBuilt: String;
begin
if (FXIGServer = nil) or (FXIGServer.FContext = nil) then
- result := '???'
+ result := '???xig'
else
result := FXIGServer.FContext.FDate;
end;
diff --git a/server/fhirserver.lpi b/server/fhirserver.lpi
index 86217ab84..439265082 100644
--- a/server/fhirserver.lpi
+++ b/server/fhirserver.lpi
@@ -810,7 +810,7 @@
-
+
@@ -978,6 +978,9 @@
+
+
+
diff --git a/server/operations.pas b/server/operations.pas
index ae97e3636..691fa62c2 100644
--- a/server/operations.pas
+++ b/server/operations.pas
@@ -65,7 +65,7 @@ function TFhirVersionsOperation.Execute(context: TOperationContext; manager: TFH
var
p : TFhirParametersW;
begin
- result := '??';
+ result := '??op';
try
p := FFactory.makeParameters;
try
diff --git a/server/operations_r2.pas b/server/operations_r2.pas
index 6af76751d..f1c134a1c 100644
--- a/server/operations_r2.pas
+++ b/server/operations_r2.pas
@@ -772,7 +772,7 @@ function TFhirGenerateQAOperation.CreateDefinition(base : String): TFHIROperatio
function TFhirGenerateQAOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qa';
end;
{ TFhirJWTOperation }
diff --git a/server/operations_r3.pas b/server/operations_r3.pas
index d8d95e153..21d7def9b 100644
--- a/server/operations_r3.pas
+++ b/server/operations_r3.pas
@@ -840,7 +840,7 @@ function TFhirGenerateQAOperation.CreateDefinition(base : String): TFHIROperatio
function TFhirGenerateQAOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qa';
end;
{ TFhirJWTOperation }
@@ -881,7 +881,7 @@ function TFhirGenerateJWTOperation.Execute(context : TOperationContext; manager:
pIn : TFhirParameters;
pOut : TFhirParameters;
begin
- result := '??';
+ result := '??jwt';
try
pIn := makeParamsV(request);
try
@@ -966,7 +966,7 @@ function TFhirGenerateCodeOperation.Execute(context : TOperationContext; manager
oo : TFHIROperationOutcome;
issue : TFhirOperationOutcomeIssue;
begin
- result := '??';
+ result := '??gen';
try
manager.NotFound(request, response);
if native(manager).check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1048,7 +1048,7 @@ function TFhirHandleQAPostOperation.CreateDefinition(base : String): TFHIROperat
function TFhirHandleQAPostOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qap';
end;
function TFhirHandleQAPostOperation.isWrite: boolean;
@@ -1090,7 +1090,7 @@ function TFhirQuestionnaireGenerationOperation.Execute(context : TOperationConte
needSecure : boolean;
ctxt : TFHIRValidatorContext;
begin
- result := '??';
+ result := '??qgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1251,7 +1251,7 @@ function TFhirValidationOperation.Execute(context : TOperationContext; manager:
result := request.Parameters[name];
end;
begin
- result := '??';
+ result := '??val';
profileId := '';
profile := nil;
try
@@ -1361,7 +1361,7 @@ function TFhirEverythingOperation.Execute(context : TOperationContext; manager:
conn : TFDBConnection;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??pe';
patIds := TPatientIdTracker.Create;
try
try
@@ -1489,7 +1489,7 @@ function TFhirProcessClaimOperation.Execute(context : TOperationContext; manager
resp : TFhirClaimResponse;
needSecure : boolean;
begin
- result := '??';
+ result := '??claim';
claim := nil;
try
manager.NotFound(request, response);
@@ -1586,7 +1586,7 @@ function TFhirGenerateSnapshotOperation.Execute(context : TOperationContext; man
utils : TProfileUtilities;
op : TFHIROperationOutcome;
begin
- result := '??';
+ result := '??sgen';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1702,7 +1702,7 @@ function TFhirGenerateTemplateOperation.Execute(context : TOperationContext; man
narr : TFHIRNarrativeGenerator;
needSecure : boolean;
begin
- result := '??';
+ result := '??tgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1800,7 +1800,7 @@ function TFhirGenerateNarrativeOperation.Execute(context : TOperationContext; ma
narr : TFHIRNarrativeGenerator;
r : TFHIRResourceV;
begin
- result := '??';
+ result := '??ngen';
try
r := request.Resource;
if (r = nil) then
@@ -1862,7 +1862,7 @@ function TFhirSuggestKeyWordsOperation.CreateDefinition(base: String): TFHIROper
function TFhirSuggestKeyWordsOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??key';
raise EFHIRException.CreateLang('NOT_DONE_YET', request.langList);
end;
@@ -1901,7 +1901,7 @@ function TFhirGetMetaDataOperation.Execute(context : TOperationContext; manager:
uri : TFhirUri;
params : TFhirParameters;
begin
- result := '??';
+ result := '??mget';
try
ok := true;
if request.ResourceName = '' then
@@ -2050,7 +2050,7 @@ function TFhirAddMetaDataOperation.Execute(context : TOperationContext; manager:
mw : TFHIRMetaW;
p : TFHIRResource;
begin
- result := '??';
+ result := '??madd';
meta := nil;
try
@@ -2217,7 +2217,7 @@ function TFhirDeleteMetaDataOperation.Execute(context : TOperationContext; manag
mw : TFHIRMetaW;
p : TFhirResource;
begin
- result := '??';
+ result := '??mdel';
meta := nil;
try
ok := true;
@@ -2387,7 +2387,7 @@ function TFhirDiffOperation.Execute(context : TOperationContext; manager: TFHIRO
// meta : TFHIRMetaW;
// c : TFhirCoding;
begin
- result := '??';
+ result := '??diff';
try
ok := true;
if not manager.check(response, request.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, fcmdRead), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -2468,7 +2468,7 @@ function TFhirConvertOperation.CreateDefinition(base: String): TFHIROperationDef
function TFhirConvertOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??cnv';
try
response.Resource := request.Resource.link;
response.HTTPCode := 200;
@@ -2552,7 +2552,7 @@ function TFhirObservationStatsOperation.Execute(context : TOperationContext; man
list : TFslList;
res : TFHIRResourceV;
begin
- result := '??';
+ result := '??obs';
try
manager.NotFound(request, response);
req := TFHIRStatsOpRequest.Create();
@@ -2670,7 +2670,7 @@ function TFhirObservationLastNOperation.Execute(context : TOperationContext; man
prsrFmt : TFhirFormat;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??lastn';
patIds := TPatientIdTracker.Create;
try
conn := native(manager).Connection;
@@ -3066,7 +3066,7 @@ function TFhirGenerateDocumentOperation.Execute(context : TOperationContext; man
needSecure : boolean;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??dgen';
patIds := TPatientIdTracker.Create;
try
try
diff --git a/server/operations_r4.pas b/server/operations_r4.pas
index f11772839..468af6e4b 100644
--- a/server/operations_r4.pas
+++ b/server/operations_r4.pas
@@ -910,7 +910,7 @@ function TFhirGenerateQAOperation.CreateDefinition(base : String): TFHIROperatio
function TFhirGenerateQAOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qagen';
end;
{ TFhirJWTOperation }
@@ -951,7 +951,7 @@ function TFhirGenerateJWTOperation.Execute(context : TOperationContext; manager:
pIn : TFhirParameters;
pOut : TFhirParameters;
begin
- result := '??';
+ result := '??jwt';
try
pIn := makeParamsV(request);
try
@@ -1036,7 +1036,7 @@ function TFhirGenerateCodeOperation.Execute(context : TOperationContext; manager
oo : TFHIROperationOutcome;
issue : TFhirOperationOutcomeIssue;
begin
- result := '??';
+ result := '??cgen';
try
manager.NotFound(request, response);
if native(manager).check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1118,7 +1118,7 @@ function TFhirHandleQAPostOperation.CreateDefinition(base : String): TFHIROperat
function TFhirHandleQAPostOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qap';
end;
function TFhirHandleQAPostOperation.isWrite: boolean;
@@ -1160,7 +1160,7 @@ function TFhirQuestionnaireGenerationOperation.Execute(context : TOperationConte
needSecure : boolean;
ctxt : TFHIRValidatorContext;
begin
- result := '??';
+ result := '??qgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1321,7 +1321,7 @@ function TFhirValidationOperation.Execute(context : TOperationContext; manager:
result := request.Parameters[name];
end;
begin
- result := '??';
+ result := '??val';
profileId := '';
profile := nil;
try
@@ -1431,7 +1431,7 @@ function TFhirEverythingOperation.Execute(context : TOperationContext; manager:
conn : TFDBConnection;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??pe';
patIds := TPatientIdTracker.Create;
try
try
@@ -1559,7 +1559,7 @@ function TFhirProcessClaimOperation.Execute(context : TOperationContext; manager
resp : TFhirClaimResponse;
needSecure : boolean;
begin
- result := '??';
+ result := '??claim';
claim := nil;
try
manager.NotFound(request, response);
@@ -1656,7 +1656,7 @@ function TFhirGenerateSnapshotOperation.Execute(context : TOperationContext; man
utils : TProfileUtilities;
op : TFHIROperationOutcome;
begin
- result := '??';
+ result := '??sgen';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.LangList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1773,7 +1773,7 @@ function TFhirGenerateTemplateOperation.Execute(context : TOperationContext; man
narr : TFHIRNarrativeGenerator;
needSecure : boolean;
begin
- result := '??';
+ result := '??tgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.LangList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1871,7 +1871,7 @@ function TFhirGenerateNarrativeOperation.Execute(context : TOperationContext; ma
narr : TFHIRNarrativeGenerator;
r : TFHIRResourceV;
begin
- result := '??';
+ result := '??ngen';
try
r := request.Resource;
if (r = nil) then
@@ -1933,7 +1933,7 @@ function TFhirSuggestKeyWordsOperation.CreateDefinition(base: String): TFHIROper
function TFhirSuggestKeyWordsOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??key';
raise EFHIRException.CreateLang('NOT_DONE_YET', request.langList);
end;
@@ -1973,7 +1973,7 @@ function TFhirGetMetaDataOperation.Execute(context : TOperationContext; manager:
params : TFhirParameters;
conn : TFDBConnection;
begin
- result := '??';
+ result := '??mget';
conn := native(manager).Connection;
try
ok := true;
@@ -2120,7 +2120,7 @@ function TFhirAddMetaDataOperation.Execute(context : TOperationContext; manager:
mw : TFHIRMetaW;
p : TFHIRResource;
begin
- result := '??';
+ result := '??madd';
meta := nil;
try
@@ -2287,7 +2287,7 @@ function TFhirDeleteMetaDataOperation.Execute(context : TOperationContext; manag
mw : TFHIRMetaW;
p : TFhirResource;
begin
- result := '??';
+ result := '??mdel';
meta := nil;
try
ok := true;
@@ -2457,7 +2457,7 @@ function TFhirDiffOperation.Execute(context : TOperationContext; manager: TFHIRO
// meta : TFHIRMetaW;
// c : TFhirCoding;
begin
- result := '??';
+ result := '??diff';
try
ok := true;
if not manager.check(response, request.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, fcmdRead), 400, request.LangList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -2538,7 +2538,7 @@ function TFhirConvertOperation.CreateDefinition(base: String): TFHIROperationDef
function TFhirConvertOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??cnv';
try
response.Resource := request.Resource.link;
response.HTTPCode := 200;
@@ -2622,7 +2622,7 @@ function TFhirObservationStatsOperation.Execute(context : TOperationContext; man
list : TFslList;
res : TFHIRResourceV;
begin
- result := '??';
+ result := '??obs';
try
manager.NotFound(request, response);
req := TFHIRStatsOpRequest.Create();
@@ -2740,7 +2740,7 @@ function TFhirObservationLastNOperation.Execute(context : TOperationContext; man
prsrFmt : TFhirFormat;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??lastn';
patIds := TPatientIdTracker.Create;
try
conn := native(manager).Connection;
@@ -3010,7 +3010,7 @@ function TFhirGraphFetchOperation.Execute(context : TOperationContext; manager:
engine : TFHIRGraphDefinitionEngine4;
p : TFHIRGraphDefinitionParser4;
begin
- result := '??';
+ result := '??graph';
try
manager.NotFound(request, response);
if (request.Id <> '') and manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.LangList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -3253,7 +3253,7 @@ function TFhirGenerateDocumentOperation.Execute(context : TOperationContext; man
p : TFHIRGraphDefinitionParser4;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??dgen';
patIds := TPatientIdTracker.Create;
try
try
@@ -3418,7 +3418,7 @@ function TFhirTransformOperation.Execute(context : TOperationContext; manager: T
// utils : TProfileUtilities;
// op : TFHIROperationOutcomeW;
begin
- result := '??';
+ result := '??trns';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
diff --git a/server/operations_r4b.pas b/server/operations_r4b.pas
index c3d9a3010..3e68d16aa 100644
--- a/server/operations_r4b.pas
+++ b/server/operations_r4b.pas
@@ -910,7 +910,7 @@ function TFhirGenerateQAOperation.CreateDefinition(base : String): TFHIROperatio
function TFhirGenerateQAOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qagen';
end;
{ TFhirJWTOperation }
@@ -951,7 +951,7 @@ function TFhirGenerateJWTOperation.Execute(context : TOperationContext; manager:
pIn : TFhirParameters;
pOut : TFhirParameters;
begin
- result := '??';
+ result := '??jwt';
try
pIn := makeParamsV(request);
try
@@ -1036,7 +1036,7 @@ function TFhirGenerateCodeOperation.Execute(context : TOperationContext; manager
oo : TFHIROperationOutcome;
issue : TFhirOperationOutcomeIssue;
begin
- result := '??';
+ result := '??cgen';
try
manager.NotFound(request, response);
if native(manager).check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1118,7 +1118,7 @@ function TFhirHandleQAPostOperation.CreateDefinition(base : String): TFHIROperat
function TFhirHandleQAPostOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qap';
end;
function TFhirHandleQAPostOperation.isWrite: boolean;
@@ -1160,7 +1160,7 @@ function TFhirQuestionnaireGenerationOperation.Execute(context : TOperationConte
needSecure : boolean;
ctxt : TFHIRValidatorContext;
begin
- result := '??';
+ result := '??qgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1321,7 +1321,7 @@ function TFhirValidationOperation.Execute(context : TOperationContext; manager:
result := request.Parameters[name];
end;
begin
- result := '??';
+ result := '??val';
profileId := '';
profile := nil;
try
@@ -1431,7 +1431,7 @@ function TFhirEverythingOperation.Execute(context : TOperationContext; manager:
conn : TFDBConnection;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??pe';
patIds := TPatientIdTracker.Create;
try
try
@@ -1559,7 +1559,7 @@ function TFhirProcessClaimOperation.Execute(context : TOperationContext; manager
resp : TFhirClaimResponse;
needSecure : boolean;
begin
- result := '??';
+ result := '??claim';
claim := nil;
try
manager.NotFound(request, response);
@@ -1656,7 +1656,7 @@ function TFhirGenerateSnapshotOperation.Execute(context : TOperationContext; man
utils : TProfileUtilities;
op : TFHIROperationOutcome;
begin
- result := '??';
+ result := '??sgen';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1773,7 +1773,7 @@ function TFhirGenerateTemplateOperation.Execute(context : TOperationContext; man
narr : TFHIRNarrativeGenerator;
needSecure : boolean;
begin
- result := '??';
+ result := '??tgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1871,7 +1871,7 @@ function TFhirGenerateNarrativeOperation.Execute(context : TOperationContext; ma
narr : TFHIRNarrativeGenerator;
r : TFHIRResourceV;
begin
- result := '??';
+ result := '??ngen';
try
r := request.Resource;
if (r = nil) then
@@ -1933,7 +1933,7 @@ function TFhirSuggestKeyWordsOperation.CreateDefinition(base: String): TFHIROper
function TFhirSuggestKeyWordsOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??key';
raise EFHIRException.CreateLang('NOT_DONE_YET', request.langList);
end;
@@ -1973,7 +1973,7 @@ function TFhirGetMetaDataOperation.Execute(context : TOperationContext; manager:
params : TFhirParameters;
conn : TFDBConnection;
begin
- result := '??';
+ result := '??mget';
conn := native(manager).Connection;
try
ok := true;
@@ -2120,7 +2120,7 @@ function TFhirAddMetaDataOperation.Execute(context : TOperationContext; manager:
mw : TFHIRMetaW;
p : TFHIRResource;
begin
- result := '??';
+ result := '??madd';
meta := nil;
try
@@ -2287,7 +2287,7 @@ function TFhirDeleteMetaDataOperation.Execute(context : TOperationContext; manag
mw : TFHIRMetaW;
p : TFhirResource;
begin
- result := '??';
+ result := '??mdel';
meta := nil;
try
ok := true;
@@ -2457,7 +2457,7 @@ function TFhirDiffOperation.Execute(context : TOperationContext; manager: TFHIRO
// meta : TFHIRMetaW;
// c : TFhirCoding;
begin
- result := '??';
+ result := '??diff';
try
ok := true;
if not manager.check(response, request.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, fcmdRead), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -2538,7 +2538,7 @@ function TFhirConvertOperation.CreateDefinition(base: String): TFHIROperationDef
function TFhirConvertOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??cnv';
try
response.Resource := request.Resource.link;
response.HTTPCode := 200;
@@ -2622,7 +2622,7 @@ function TFhirObservationStatsOperation.Execute(context : TOperationContext; man
list : TFslList;
res : TFHIRResourceV;
begin
- result := '??';
+ result := '??obs';
try
manager.NotFound(request, response);
req := TFHIRStatsOpRequest.Create();
@@ -2740,7 +2740,7 @@ function TFhirObservationLastNOperation.Execute(context : TOperationContext; man
prsrFmt : TFhirFormat;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??lastn';
patIds := TPatientIdTracker.Create;
try
conn := native(manager).Connection;
@@ -3010,7 +3010,7 @@ function TFhirGraphFetchOperation.Execute(context : TOperationContext; manager:
engine : TFHIRGraphDefinitionEngine4B;
p : TFHIRGraphDefinitionParser4B;
begin
- result := '??';
+ result := '??graph';
try
manager.NotFound(request, response);
if (request.Id <> '') and manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -3253,7 +3253,7 @@ function TFhirGenerateDocumentOperation.Execute(context : TOperationContext; man
p : TFHIRGraphDefinitionParser4B;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??dgen';
patIds := TPatientIdTracker.Create;
try
try
@@ -3418,7 +3418,7 @@ function TFhirTransformOperation.Execute(context : TOperationContext; manager: T
// utils : TProfileUtilities;
// op : TFHIROperationOutcomeW;
begin
- result := '??';
+ result := '??trns';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
diff --git a/server/operations_r5.pas b/server/operations_r5.pas
index 59fa3d13f..f3f6b4f4a 100644
--- a/server/operations_r5.pas
+++ b/server/operations_r5.pas
@@ -875,7 +875,7 @@ function TFhirGenerateQAOperation.CreateDefinition(base : String): TFHIROperatio
function TFhirGenerateQAOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qagen';
end;
{ TFhirJWTOperation }
@@ -916,7 +916,7 @@ function TFhirGenerateJWTOperation.Execute(context : TOperationContext; manager:
pIn : TFhirParameters;
pOut : TFhirParameters;
begin
- result := '??';
+ result := '??jwt';
try
pIn := makeParamsV(request);
try
@@ -1001,7 +1001,7 @@ function TFhirGenerateCodeOperation.Execute(context : TOperationContext; manager
oo : TFHIROperationOutcome;
issue : TFhirOperationOutcomeIssue;
begin
- result := '??';
+ result := '??cgen';
try
manager.NotFound(request, response);
if native(manager).check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1083,7 +1083,7 @@ function TFhirHandleQAPostOperation.CreateDefinition(base : String): TFHIROperat
function TFhirHandleQAPostOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??qap';
end;
function TFhirHandleQAPostOperation.isWrite: boolean;
@@ -1125,7 +1125,7 @@ function TFhirQuestionnaireGenerationOperation.Execute(context : TOperationConte
needSecure : boolean;
ctxt : TFHIRValidatorContext;
begin
- result := '??';
+ result := '??qgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1286,7 +1286,7 @@ function TFhirValidationOperation.Execute(context : TOperationContext; manager:
result := request.Parameters[name];
end;
begin
- result := '??';
+ result := '??val';
profileId := '';
profile := nil;
try
@@ -1396,7 +1396,7 @@ function TFhirEverythingOperation.Execute(context : TOperationContext; manager:
conn : TFDBConnection;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??pe';
patIds := TPatientIdTracker.Create;
try
try
@@ -1524,7 +1524,7 @@ function TFhirProcessClaimOperation.Execute(context : TOperationContext; manager
resp : TFhirClaimResponse;
needSecure : boolean;
begin
- result := '??';
+ result := '??claim';
claim := nil;
try
manager.NotFound(request, response);
@@ -1621,7 +1621,7 @@ function TFhirGenerateSnapshotOperation.Execute(context : TOperationContext; man
utils : TProfileUtilities;
op : TFHIROperationOutcome;
begin
- result := '??';
+ result := '??sgen';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1738,7 +1738,7 @@ function TFhirGenerateTemplateOperation.Execute(context : TOperationContext; man
narr : TFHIRNarrativeGenerator;
needSecure : boolean;
begin
- result := '??';
+ result := '??tgen';
try
manager.NotFound(request, response);
if manager.check(response, request.Session.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, request.CommandType), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -1836,7 +1836,7 @@ function TFhirGenerateNarrativeOperation.Execute(context : TOperationContext; ma
narr : TFHIRNarrativeGenerator;
r : TFHIRResourceV;
begin
- result := '??';
+ result := '??ngen';
try
r := request.Resource;
if (r = nil) then
@@ -1898,7 +1898,7 @@ function TFhirSuggestKeyWordsOperation.CreateDefinition(base: String): TFHIROper
function TFhirSuggestKeyWordsOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??key';
raise EFHIRException.CreateLang('NOT_DONE_YET', request.langList);
end;
@@ -1938,7 +1938,7 @@ function TFhirGetMetaDataOperation.Execute(context : TOperationContext; manager:
params : TFhirParameters;
conn : TFDBConnection;
begin
- result := '??';
+ result := '??mget';
conn := native(manager).Connection;
try
ok := true;
@@ -2085,7 +2085,7 @@ function TFhirAddMetaDataOperation.Execute(context : TOperationContext; manager:
mw : TFHIRMetaW;
p : TFHIRResource;
begin
- result := '??';
+ result := '??madd';
meta := nil;
try
@@ -2252,7 +2252,7 @@ function TFhirDeleteMetaDataOperation.Execute(context : TOperationContext; manag
mw : TFHIRMetaW;
p : TFhirResource;
begin
- result := '??';
+ result := '??mdel';
meta := nil;
try
ok := true;
@@ -2422,7 +2422,7 @@ function TFhirDiffOperation.Execute(context : TOperationContext; manager: TFHIRO
// meta : TFHIRMetaW;
// c : TFhirCoding;
begin
- result := '??';
+ result := '??diff';
try
ok := true;
if not manager.check(response, request.canRead(request.ResourceName) and manager.opAllowed(request.ResourceName, fcmdRead), 400, request.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', request.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -2503,7 +2503,7 @@ function TFhirConvertOperation.CreateDefinition(base: String): TFHIROperationDef
function TFhirConvertOperation.Execute(context : TOperationContext; manager: TFHIROperationEngine; request: TFHIRRequest; response: TFHIRResponse; tt : TTimeTracker) : String;
begin
- result := '??';
+ result := '??cnv';
try
response.Resource := request.Resource.link;
response.HTTPCode := 200;
@@ -2587,7 +2587,7 @@ function TFhirObservationStatsOperation.Execute(context : TOperationContext; man
list : TFslList;
res : TFHIRResourceV;
begin
- result := '??';
+ result := '??obs';
try
manager.NotFound(request, response);
req := TFHIRStatsOpRequest.Create();
@@ -2705,7 +2705,7 @@ function TFhirObservationLastNOperation.Execute(context : TOperationContext; man
prsrFmt : TFhirFormat;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??lastn';
patIds := TPatientIdTracker.Create;
try
conn := native(manager).Connection;
@@ -2975,7 +2975,7 @@ function TFhirGraphFetchOperation.Execute(context : TOperationContext; manager:
engine : TFHIRGraphDefinitionEngine4;
p : TFHIRGraphDefinitionParseR5;
begin
- result := '??';
+ result := '??graph';
try
manager.NotFound(request, response);
if (request.Id <> '') and manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
@@ -3218,7 +3218,7 @@ function TFhirGenerateDocumentOperation.Execute(context : TOperationContext; man
p : TFHIRGraphDefinitionParseR5;
patIds : TPatientIdTracker;
begin
- result := '??';
+ result := '??dgen';
patIds := TPatientIdTracker.Create;
try
try
@@ -3383,7 +3383,7 @@ function TFhirTransformOperation.Execute(context : TOperationContext; manager: T
// utils : TProfileUtilities;
// op : TFHIROperationOutcomeW;
begin
- result := '??';
+ result := '??trns';
try
manager.NotFound(request, response);
if manager.check(response, manager.opAllowed(request.ResourceName, request.CommandType), 400, manager.langList, StringFormat(GetFhirMessage('MSG_OP_NOT_ALLOWED', manager.langList), [CODES_TFHIRCommandType[request.CommandType], request.ResourceName]), itForbidden) then
diff --git a/server/package_spider.pas b/server/package_spider.pas
index 09909ee71..196a19084 100644
--- a/server/package_spider.pas
+++ b/server/package_spider.pas
@@ -471,7 +471,7 @@ procedure TPackageUpdater.updateItem(source : String; item: TMXmlElement; i : in
date : TFslDateTime;
id, url, d, list: String;
begin
- url := '??';
+ url := '??pck';
if item.element('guid') = nil then
begin
log('Error processing item from '+source+'#item['+inttostr(i)+']: no guid provided', source, true);
diff --git a/server/scim_server.pas b/server/scim_server.pas
index 4060abe2a..88a0660ac 100644
--- a/server/scim_server.pas
+++ b/server/scim_server.pas
@@ -991,7 +991,7 @@ function extractProvider(s : String) : String;
else if s.StartsWith('http://www.hl7.org') then
result := 'HL7'
else
- result := '??';
+ result := '??scim';
end;
procedure TSCIMServer.processWebRequest(context: TIdContext; session : TFhirSession; request: TIdHTTPRequestInfo; response: TIdHTTPResponseInfo; prefix : String);
diff --git a/server/tx/tx_rxnorm.pas b/server/tx/tx_rxnorm.pas
index ca0378289..c68492236 100644
--- a/server/tx/tx_rxnorm.pas
+++ b/server/tx/tx_rxnorm.pas
@@ -1061,7 +1061,7 @@ function TRxNormServices.systemUri(context: TCodeSystemProviderContext): String;
function TRxNormServices.version(context: TCodeSystemProviderContext): String;
begin
- result := '??';
+ result := '??rx1';
end;
{ TNDFRTServices }
@@ -1098,7 +1098,7 @@ function TNDFRTServices.systemUri(context: TCodeSystemProviderContext): String;
function TNDFRTServices.version(context: TCodeSystemProviderContext): String;
begin
- result := '??';
+ result := '??rx2';
end;
end.
diff --git a/server/tx_manager.pas b/server/tx_manager.pas
index 374999f86..b3400c8ba 100644
--- a/server/tx_manager.pas
+++ b/server/tx_manager.pas
@@ -471,7 +471,7 @@ function TAllCodeSystemsProvider.systemUri(context : TCodeSystemProviderContext)
case c.source of
acssLoinc : result := FStore.Loinc.systemUri(c.context);
acssSnomed : result := FStore.DefSnomed.systemUri();
- acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.systemUri(c.context) else result := '??';
+ acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.systemUri(c.context) else result := '??tx1';
acssUnii : result := FStore.Unii.systemUri(c.context);
acssActCode : result := FActCode.systemUri(c.context);
end;
@@ -544,7 +544,7 @@ function TAllCodeSystemsProvider.Code(context : TCodeSystemProviderContext) : st
case c.source of
acssLoinc : result := FStore.Loinc.Code(c.context);
acssSnomed : result := FSnomed.Code(c.context);
- acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.Code(c.context) else result := '??';
+ acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.Code(c.context) else result := '??tx2';
acssUnii : result := FStore.Unii.Code(c.context);
acssActCode : result := FActCode.Code(c.context);
end;
@@ -585,7 +585,7 @@ function TAllCodeSystemsProvider.Definition(context : TCodeSystemProviderContext
case c.source of
acssLoinc : result := FStore.Loinc.Definition(c.context);
acssSnomed : result := FSnomed.Definition(c.context);
- acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.Definition(c.context) else result := '??';
+ acssRxNorm : if FStore.RxNorm <> nil then result := FStore.RxNorm.Definition(c.context) else result := '??tx3';
acssUnii : result := FStore.Unii.Definition(c.context);
acssActCode : result := FActCode.Definition(c.context);
end;
diff --git a/server/tx_operations.pas b/server/tx_operations.pas
index f8049709d..f41b9a84e 100644
--- a/server/tx_operations.pas
+++ b/server/tx_operations.pas
@@ -308,7 +308,7 @@ function TFhirExpandValueSetOperation.Execute(context : TOperationContext; manag
else if vs.url <> '' then
result := 'Expand ValueSet '+vs.url+' on '+vs.source
else
- result := 'Expand ValueSet on '+vs.source;
+ result := 'Expand inline ValueSet on '+vs.source;
vs.checkNoImplicitRules('ExpandValueSet', 'ValueSet');
FFactory.checkNoModifiers(vs.Resource, 'ExpandValueSet', 'ValueSet');
diff --git a/server/validator_r2.pas b/server/validator_r2.pas
index 12172f885..b91f381c0 100644
--- a/server/validator_r2.pas
+++ b/server/validator_r2.pas
@@ -274,7 +274,7 @@ function TFHIRServerWorkerContextR2.validateCode(system, version, code, display
else
begin
result.Severity := isError;
- result.Message := '??';
+ result.Message := '??val2';
end;
result.Link;
finally
diff --git a/server/validator_r3.pas b/server/validator_r3.pas
index ae73ed7f2..11c56b638 100644
--- a/server/validator_r3.pas
+++ b/server/validator_r3.pas
@@ -358,7 +358,7 @@ function TFHIRServerWorkerContextR3.validateCode(system, version, code, display
else
begin
result.Severity := isError;
- result.Message := '??';
+ result.Message := '??val3';
end;
result.Link;
finally
diff --git a/server/validator_r4.pas b/server/validator_r4.pas
index c49dbfcd5..9b7945e66 100644
--- a/server/validator_r4.pas
+++ b/server/validator_r4.pas
@@ -357,7 +357,7 @@ function TFHIRServerWorkerContextR4.validateCode(system, version, code, display
else
begin
result.Severity := isError;
- result.Message := '??';
+ result.Message := '??val4';
end;
result.Link;
finally
diff --git a/server/validator_r4b.pas b/server/validator_r4b.pas
index f65b1944d..30dc8173e 100644
--- a/server/validator_r4b.pas
+++ b/server/validator_r4b.pas
@@ -357,7 +357,7 @@ function TFHIRServerWorkerContextR4B.validateCode(system, version, code, display
else
begin
result.Severity := isError;
- result.Message := '??';
+ result.Message := '??val4b';
end;
result.Link;
finally
diff --git a/server/validator_r5.pas b/server/validator_r5.pas
index 768c9b7d1..88ddc6ff5 100644
--- a/server/validator_r5.pas
+++ b/server/validator_r5.pas
@@ -357,7 +357,7 @@ function TFHIRServerWorkerContextR5.validateCode(system, version, code, display
else
begin
result.Severity := isError;
- result.Message := '??';
+ result.Message := 'val5';
end;
result.Link;
finally
diff --git a/server/web/assets/css/jquery-ui.css b/server/web/assets/css/jquery-ui.css
new file mode 100644
index 000000000..f7e5293f2
--- /dev/null
+++ b/server/web/assets/css/jquery-ui.css
@@ -0,0 +1,523 @@
+/*! jQuery UI - v1.11.1 - 2014-10-13
+* http://jqueryui.com
+* Includes: core.css, tabs.css, theme.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px
+* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
+
+/* Layout helpers
+----------------------------------*/
+.ui-helper-hidden {
+ display: none;
+}
+.ui-helper-hidden-accessible {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+}
+.ui-helper-reset {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ outline: 0;
+ line-height: 1.3;
+ text-decoration: none;
+ font-size: 100%;
+ list-style: none;
+}
+.ui-helper-clearfix:before,
+.ui-helper-clearfix:after {
+ content: "";
+ display: table;
+ border-collapse: collapse;
+}
+.ui-helper-clearfix:after {
+ clear: both;
+}
+.ui-helper-clearfix {
+ min-height: 0; /* support: IE7 */
+}
+.ui-helper-zfix {
+ width: 100%;
+ height: 100%;
+ top: 0;
+ left: 0;
+ position: absolute;
+ opacity: 0;
+ filter:Alpha(Opacity=0); /* support: IE8 */
+}
+
+.ui-front {
+ z-index: 100;
+}
+
+
+/* Interaction Cues
+----------------------------------*/
+.ui-state-disabled {
+ cursor: default !important;
+}
+
+
+/* Icons
+----------------------------------*/
+
+/* states and images */
+.ui-icon {
+ display: block;
+ text-indent: -99999px;
+ overflow: hidden;
+ background-repeat: no-repeat;
+}
+
+
+/* Misc visuals
+----------------------------------*/
+
+/* Overlays */
+.ui-widget-overlay {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+}
+.ui-tabs {
+ position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
+ padding: .2em;
+}
+.ui-tabs .ui-tabs-nav {
+ margin: 0;
+ padding: .2em .2em 0;
+}
+.ui-tabs .ui-tabs-nav li {
+ list-style: none;
+ float: left;
+ position: relative;
+ top: 0;
+ margin: 1px .2em 0 0;
+ border-bottom-width: 0;
+ padding: 0;
+ white-space: nowrap;
+}
+.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
+ float: left;
+ padding: .5em 1em;
+ text-decoration: none;
+}
+.ui-tabs .ui-tabs-nav li.ui-tabs-active {
+ margin-bottom: -1px;
+ padding-bottom: 1px;
+}
+.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
+.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
+.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
+ cursor: text;
+}
+.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
+ cursor: pointer;
+}
+.ui-tabs .ui-tabs-panel {
+ display: block;
+ border-width: 0;
+ padding: 1em 1.4em;
+ background: none;
+}
+
+/* Component containers
+----------------------------------*/
+.ui-widget {
+ font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;
+ font-size: 1.1em;
+}
+.ui-widget .ui-widget {
+ font-size: 1em;
+}
+.ui-widget input,
+.ui-widget select,
+.ui-widget textarea,
+.ui-widget button {
+ font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;
+ font-size: 1em;
+}
+.ui-widget-content {
+ border: 1px solid #dddddd;
+ background: #ffffff;
+ color: #333333;
+}
+.ui-widget-header {
+ border: 1px solid #EFEFEF;
+ background: #EEEEEE;
+ color: #ffffff;
+ font-weight: bold;
+}
+.ui-widget-header a {
+ color: #ffffff;
+}
+
+/* Interaction states
+----------------------------------*/
+.ui-state-default,
+.ui-widget-content .ui-state-default,
+.ui-widget-header .ui-state-default {
+ border: 1px solid #cccccc;
+ background: #f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;
+ font-weight: bold;
+ color: #1c94c4;
+}
+.ui-state-default a,
+.ui-state-default a:link,
+.ui-state-default a:visited {
+ color: #1c94c4;
+ text-decoration: none;
+}
+.ui-state-hover,
+.ui-widget-content .ui-state-hover,
+.ui-widget-header .ui-state-hover,
+.ui-state-focus,
+.ui-widget-content .ui-state-focus,
+.ui-widget-header .ui-state-focus {
+ border: 1px solid #fbcb09;
+ background: #fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;
+ font-weight: bold;
+ color: #c77405;
+}
+.ui-state-hover a,
+.ui-state-hover a:hover,
+.ui-state-hover a:link,
+.ui-state-hover a:visited,
+.ui-state-focus a,
+.ui-state-focus a:hover,
+.ui-state-focus a:link,
+.ui-state-focus a:visited {
+ color: #c77405;
+ text-decoration: none;
+}
+.ui-state-active,
+.ui-widget-content .ui-state-active,
+.ui-widget-header .ui-state-active {
+ border: 1px solid #fbd850;
+ background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;
+ font-weight: bold;
+ color: #eb8f00;
+}
+.ui-state-active a,
+.ui-state-active a:link,
+.ui-state-active a:visited {
+ color: #eb8f00;
+ text-decoration: none;
+}
+
+/* Interaction Cues
+----------------------------------*/
+.ui-state-highlight,
+.ui-widget-content .ui-state-highlight,
+.ui-widget-header .ui-state-highlight {
+ border: 1px solid #fed22f;
+ background: #ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x;
+ color: #363636;
+}
+.ui-state-highlight a,
+.ui-widget-content .ui-state-highlight a,
+.ui-widget-header .ui-state-highlight a {
+ color: #363636;
+}
+.ui-state-error,
+.ui-widget-content .ui-state-error,
+.ui-widget-header .ui-state-error {
+ border: 1px solid #cd0a0a;
+ background: #b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;
+ color: #ffffff;
+}
+.ui-state-error a,
+.ui-widget-content .ui-state-error a,
+.ui-widget-header .ui-state-error a {
+ color: #ffffff;
+}
+.ui-state-error-text,
+.ui-widget-content .ui-state-error-text,
+.ui-widget-header .ui-state-error-text {
+ color: #ffffff;
+}
+.ui-priority-primary,
+.ui-widget-content .ui-priority-primary,
+.ui-widget-header .ui-priority-primary {
+ font-weight: bold;
+}
+.ui-priority-secondary,
+.ui-widget-content .ui-priority-secondary,
+.ui-widget-header .ui-priority-secondary {
+ opacity: .7;
+ filter:Alpha(Opacity=70); /* support: IE8 */
+ font-weight: normal;
+}
+.ui-state-disabled,
+.ui-widget-content .ui-state-disabled,
+.ui-widget-header .ui-state-disabled {
+ opacity: .35;
+ filter:Alpha(Opacity=35); /* support: IE8 */
+ background-image: none;
+}
+.ui-state-disabled .ui-icon {
+ filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
+}
+
+/* Icons
+----------------------------------*/
+
+/* states and images */
+.ui-icon {
+ width: 16px;
+ height: 16px;
+}
+.ui-icon,
+.ui-widget-content .ui-icon {
+ background-image: url("images/ui-icons_222222_256x240.png");
+}
+.ui-widget-header .ui-icon {
+ background-image: url("images/ui-icons_ffffff_256x240.png");
+}
+.ui-state-default .ui-icon {
+ background-image: url("images/ui-icons_ef8c08_256x240.png");
+}
+.ui-state-hover .ui-icon,
+.ui-state-focus .ui-icon {
+ background-image: url("images/ui-icons_ef8c08_256x240.png");
+}
+.ui-state-active .ui-icon {
+ background-image: url("images/ui-icons_ef8c08_256x240.png");
+}
+.ui-state-highlight .ui-icon {
+ background-image: url("images/ui-icons_228ef1_256x240.png");
+}
+.ui-state-error .ui-icon,
+.ui-state-error-text .ui-icon {
+ background-image: url("images/ui-icons_ffd27a_256x240.png");
+}
+
+/* positioning */
+.ui-icon-blank { background-position: 16px 16px; }
+.ui-icon-carat-1-n { background-position: 0 0; }
+.ui-icon-carat-1-ne { background-position: -16px 0; }
+.ui-icon-carat-1-e { background-position: -32px 0; }
+.ui-icon-carat-1-se { background-position: -48px 0; }
+.ui-icon-carat-1-s { background-position: -64px 0; }
+.ui-icon-carat-1-sw { background-position: -80px 0; }
+.ui-icon-carat-1-w { background-position: -96px 0; }
+.ui-icon-carat-1-nw { background-position: -112px 0; }
+.ui-icon-carat-2-n-s { background-position: -128px 0; }
+.ui-icon-carat-2-e-w { background-position: -144px 0; }
+.ui-icon-triangle-1-n { background-position: 0 -16px; }
+.ui-icon-triangle-1-ne { background-position: -16px -16px; }
+.ui-icon-triangle-1-e { background-position: -32px -16px; }
+.ui-icon-triangle-1-se { background-position: -48px -16px; }
+.ui-icon-triangle-1-s { background-position: -64px -16px; }
+.ui-icon-triangle-1-sw { background-position: -80px -16px; }
+.ui-icon-triangle-1-w { background-position: -96px -16px; }
+.ui-icon-triangle-1-nw { background-position: -112px -16px; }
+.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
+.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
+.ui-icon-arrow-1-n { background-position: 0 -32px; }
+.ui-icon-arrow-1-ne { background-position: -16px -32px; }
+.ui-icon-arrow-1-e { background-position: -32px -32px; }
+.ui-icon-arrow-1-se { background-position: -48px -32px; }
+.ui-icon-arrow-1-s { background-position: -64px -32px; }
+.ui-icon-arrow-1-sw { background-position: -80px -32px; }
+.ui-icon-arrow-1-w { background-position: -96px -32px; }
+.ui-icon-arrow-1-nw { background-position: -112px -32px; }
+.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
+.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
+.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
+.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
+.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
+.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
+.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
+.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
+.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
+.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
+.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
+.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
+.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
+.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
+.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
+.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
+.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
+.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
+.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
+.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
+.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
+.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
+.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
+.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
+.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
+.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
+.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
+.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
+.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
+.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
+.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
+.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
+.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
+.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
+.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
+.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
+.ui-icon-arrow-4 { background-position: 0 -80px; }
+.ui-icon-arrow-4-diag { background-position: -16px -80px; }
+.ui-icon-extlink { background-position: -32px -80px; }
+.ui-icon-newwin { background-position: -48px -80px; }
+.ui-icon-refresh { background-position: -64px -80px; }
+.ui-icon-shuffle { background-position: -80px -80px; }
+.ui-icon-transfer-e-w { background-position: -96px -80px; }
+.ui-icon-transferthick-e-w { background-position: -112px -80px; }
+.ui-icon-folder-collapsed { background-position: 0 -96px; }
+.ui-icon-folder-open { background-position: -16px -96px; }
+.ui-icon-document { background-position: -32px -96px; }
+.ui-icon-document-b { background-position: -48px -96px; }
+.ui-icon-note { background-position: -64px -96px; }
+.ui-icon-mail-closed { background-position: -80px -96px; }
+.ui-icon-mail-open { background-position: -96px -96px; }
+.ui-icon-suitcase { background-position: -112px -96px; }
+.ui-icon-comment { background-position: -128px -96px; }
+.ui-icon-person { background-position: -144px -96px; }
+.ui-icon-print { background-position: -160px -96px; }
+.ui-icon-trash { background-position: -176px -96px; }
+.ui-icon-locked { background-position: -192px -96px; }
+.ui-icon-unlocked { background-position: -208px -96px; }
+.ui-icon-bookmark { background-position: -224px -96px; }
+.ui-icon-tag { background-position: -240px -96px; }
+.ui-icon-home { background-position: 0 -112px; }
+.ui-icon-flag { background-position: -16px -112px; }
+.ui-icon-calendar { background-position: -32px -112px; }
+.ui-icon-cart { background-position: -48px -112px; }
+.ui-icon-pencil { background-position: -64px -112px; }
+.ui-icon-clock { background-position: -80px -112px; }
+.ui-icon-disk { background-position: -96px -112px; }
+.ui-icon-calculator { background-position: -112px -112px; }
+.ui-icon-zoomin { background-position: -128px -112px; }
+.ui-icon-zoomout { background-position: -144px -112px; }
+.ui-icon-search { background-position: -160px -112px; }
+.ui-icon-wrench { background-position: -176px -112px; }
+.ui-icon-gear { background-position: -192px -112px; }
+.ui-icon-heart { background-position: -208px -112px; }
+.ui-icon-star { background-position: -224px -112px; }
+.ui-icon-link { background-position: -240px -112px; }
+.ui-icon-cancel { background-position: 0 -128px; }
+.ui-icon-plus { background-position: -16px -128px; }
+.ui-icon-plusthick { background-position: -32px -128px; }
+.ui-icon-minus { background-position: -48px -128px; }
+.ui-icon-minusthick { background-position: -64px -128px; }
+.ui-icon-close { background-position: -80px -128px; }
+.ui-icon-closethick { background-position: -96px -128px; }
+.ui-icon-key { background-position: -112px -128px; }
+.ui-icon-lightbulb { background-position: -128px -128px; }
+.ui-icon-scissors { background-position: -144px -128px; }
+.ui-icon-clipboard { background-position: -160px -128px; }
+.ui-icon-copy { background-position: -176px -128px; }
+.ui-icon-contact { background-position: -192px -128px; }
+.ui-icon-image { background-position: -208px -128px; }
+.ui-icon-video { background-position: -224px -128px; }
+.ui-icon-script { background-position: -240px -128px; }
+.ui-icon-alert { background-position: 0 -144px; }
+.ui-icon-info { background-position: -16px -144px; }
+.ui-icon-notice { background-position: -32px -144px; }
+.ui-icon-help { background-position: -48px -144px; }
+.ui-icon-check { background-position: -64px -144px; }
+.ui-icon-bullet { background-position: -80px -144px; }
+.ui-icon-radio-on { background-position: -96px -144px; }
+.ui-icon-radio-off { background-position: -112px -144px; }
+.ui-icon-pin-w { background-position: -128px -144px; }
+.ui-icon-pin-s { background-position: -144px -144px; }
+.ui-icon-play { background-position: 0 -160px; }
+.ui-icon-pause { background-position: -16px -160px; }
+.ui-icon-seek-next { background-position: -32px -160px; }
+.ui-icon-seek-prev { background-position: -48px -160px; }
+.ui-icon-seek-end { background-position: -64px -160px; }
+.ui-icon-seek-start { background-position: -80px -160px; }
+/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
+.ui-icon-seek-first { background-position: -80px -160px; }
+.ui-icon-stop { background-position: -96px -160px; }
+.ui-icon-eject { background-position: -112px -160px; }
+.ui-icon-volume-off { background-position: -128px -160px; }
+.ui-icon-volume-on { background-position: -144px -160px; }
+.ui-icon-power { background-position: 0 -176px; }
+.ui-icon-signal-diag { background-position: -16px -176px; }
+.ui-icon-signal { background-position: -32px -176px; }
+.ui-icon-battery-0 { background-position: -48px -176px; }
+.ui-icon-battery-1 { background-position: -64px -176px; }
+.ui-icon-battery-2 { background-position: -80px -176px; }
+.ui-icon-battery-3 { background-position: -96px -176px; }
+.ui-icon-circle-plus { background-position: 0 -192px; }
+.ui-icon-circle-minus { background-position: -16px -192px; }
+.ui-icon-circle-close { background-position: -32px -192px; }
+.ui-icon-circle-triangle-e { background-position: -48px -192px; }
+.ui-icon-circle-triangle-s { background-position: -64px -192px; }
+.ui-icon-circle-triangle-w { background-position: -80px -192px; }
+.ui-icon-circle-triangle-n { background-position: -96px -192px; }
+.ui-icon-circle-arrow-e { background-position: -112px -192px; }
+.ui-icon-circle-arrow-s { background-position: -128px -192px; }
+.ui-icon-circle-arrow-w { background-position: -144px -192px; }
+.ui-icon-circle-arrow-n { background-position: -160px -192px; }
+.ui-icon-circle-zoomin { background-position: -176px -192px; }
+.ui-icon-circle-zoomout { background-position: -192px -192px; }
+.ui-icon-circle-check { background-position: -208px -192px; }
+.ui-icon-circlesmall-plus { background-position: 0 -208px; }
+.ui-icon-circlesmall-minus { background-position: -16px -208px; }
+.ui-icon-circlesmall-close { background-position: -32px -208px; }
+.ui-icon-squaresmall-plus { background-position: -48px -208px; }
+.ui-icon-squaresmall-minus { background-position: -64px -208px; }
+.ui-icon-squaresmall-close { background-position: -80px -208px; }
+.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
+.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
+.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
+.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
+.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
+.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
+
+
+/* Misc visuals
+----------------------------------*/
+
+/* Corner radius */
+.ui-corner-all,
+.ui-corner-top,
+.ui-corner-left,
+.ui-corner-tl {
+ border-top-left-radius: 4px;
+}
+.ui-corner-all,
+.ui-corner-top,
+.ui-corner-right,
+.ui-corner-tr {
+ border-top-right-radius: 4px;
+}
+.ui-corner-all,
+.ui-corner-bottom,
+.ui-corner-left,
+.ui-corner-bl {
+ border-bottom-left-radius: 4px;
+}
+.ui-corner-all,
+.ui-corner-bottom,
+.ui-corner-right,
+.ui-corner-br {
+ border-bottom-right-radius: 4px;
+}
+
+/* Overlays */
+.ui-widget-overlay {
+ background: #666666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;
+ opacity: .5;
+ filter: Alpha(Opacity=50); /* support: IE8 */
+}
+.ui-widget-shadow {
+ margin: -5px 0 0 -5px;
+ padding: 5px;
+ background: #000000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;
+ opacity: .2;
+ filter: Alpha(Opacity=20); /* support: IE8 */
+ border-radius: 5px;
+}
diff --git a/server/web_server.pas b/server/web_server.pas
index 355662201..8681428ff 100644
--- a/server/web_server.pas
+++ b/server/web_server.pas
@@ -718,7 +718,7 @@ procedure TFhirWebServer.PlainRequest(AContext: TIdContext;
try
InterlockedIncrement(GCounterWebRequests);
SetThreadStatus('Processing '+request.Document);
- epn := '??';
+ epn := '??preq';
summ := request.document;
MarkEntry(AContext, request, response);
try
@@ -881,7 +881,7 @@ procedure TFhirWebServer.SecureRequest(AContext: TIdContext;
try
InterlockedIncrement(GCounterWebRequests);
cert := nil; // (AContext.Connection.IOHandler as TIdSSLIOHandlerSocketOpenSSL).SSLSocket.PeerCert;
- epn := '??';
+ epn := '??sreq';
SetThreadStatus('Processing '+request.Document);
MarkEntry(AContext, request, response);