-
+
+
+
diff --git a/admin/src/app/foms/fom-submission/fom-submission.component.scss b/admin/src/app/foms/fom-submission/fom-submission.component.scss
index 7a56ccaf2..5c41e3f85 100644
--- a/admin/src/app/foms/fom-submission/fom-submission.component.scss
+++ b/admin/src/app/foms/fom-submission/fom-submission.component.scss
@@ -128,4 +128,13 @@ table tr:nth-child(even) {
span.action {
@include flex(1 1 auto);
}
+}
+
+.dropdown-menu {
+ .dropdown-item {
+ &:hover {
+ color: #fff;
+ background: #007bff;
+ }
+ }
}
\ No newline at end of file
diff --git a/admin/src/app/foms/fom-submission/fom-submission.component.ts b/admin/src/app/foms/fom-submission/fom-submission.component.ts
index 012a58ccf..af066fb02 100644
--- a/admin/src/app/foms/fom-submission/fom-submission.component.ts
+++ b/admin/src/app/foms/fom-submission/fom-submission.component.ts
@@ -1,19 +1,19 @@
+import { CognitoService } from "@admin-core/services/cognito.service";
+import { ModalService } from '@admin-core/services/modal.service';
+import { StateService } from '@admin-core/services/state.service';
import { MAX_FILEUPLOAD_SIZE } from '@admin-core/utils/constants/constantUtils';
import { DatePipe, NgFor, NgIf } from '@angular/common';
import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';
import { MatSnackBar, MatSnackBarRef, SimpleSnackBar } from '@angular/material/snack-bar';
import { ActivatedRoute, Router } from '@angular/router';
-import { NgbDropdown, NgbDropdownMenu, NgbDropdownToggle } from '@ng-bootstrap/ng-bootstrap';
import { ProjectResponse, ProjectService, SpatialObjectCodeEnum, SubmissionDetailResponse, SubmissionRequest, SubmissionService, SubmissionTypeCodeEnum, WorkflowStateEnum } from '@api-client';
+import { NgbDropdown, NgbDropdownMenu, NgbDropdownToggle } from '@ng-bootstrap/ng-bootstrap';
import { RxFormBuilder, RxFormGroup } from '@rxweb/reactive-form-validators';
import { User } from '@utility/security/user';
import { Observable, Subject } from 'rxjs';
import { map, switchMap, takeUntil } from 'rxjs/operators';
-import { CognitoService } from "@admin-core/services/cognito.service";
-import { ModalService } from '@admin-core/services/modal.service';
-import { StateService } from '@admin-core/services/state.service';
import { FomSubmissionForm } from './fom-submission.form';
-import { SubmissionFormatOverviewComponent } from './submission-format-overview.component';
+import { SubmissionOverviewFaqComponent } from './submission-overview-faq.component';
import { UploadBoxComponent } from '@admin-core/components/file-upload-box/file-upload-box.component';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
@@ -26,7 +26,7 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
FormsModule,
ReactiveFormsModule,
NgFor,
- SubmissionFormatOverviewComponent,
+ SubmissionOverviewFaqComponent,
DatePipe,
UploadBoxComponent,
NgbDropdown,
diff --git a/admin/src/app/foms/fom-submission/submission-format-overview.component.html b/admin/src/app/foms/fom-submission/submission-format-overview.component.html
deleted file mode 100644
index 6b88ad569..000000000
--- a/admin/src/app/foms/fom-submission/submission-format-overview.component.html
+++ /dev/null
@@ -1,276 +0,0 @@
-
-
-
-
- FOM Geospatial Submission Format Overview
-
-
-
-
- This Forest Operations Map (FOM) geospatial submission format is based on GeoJSON
- (https://geojson.org/,
- https://tools.ietf.org/html/rfc7946).
-
-
- Submit one JSON file per FOM geospatial object type: cut block, WTRA (wildlife tree retention area), or road section. Multipart features are not compatible and need to be "exploded" prior to creating the GeoJSON file. ArcMap provides an "explode tool" suited to convert the multipart feature. A submission must include at least one cutblock file or one road section file.
-
-
- Each JSON file consists of one FeatureCollection object (as per GeoJSON) that lists geometries of the appropriate type (polygon or linestring) based on the FOM object type (see table below).
-
-
- GeoJSON geometry points must be specified using the BC Albers (EPSG:3005) or WGS 84 (EPSG:4326 and EPSG:3005) coordinate reference system. Submissions must not use latitude and longitude. Coordinates are ordered as X, Y.
-
-
- Geometries for cutblocks and road sections are also required to provide the property DEV_DATE (development date). Providing the NAME property is optional but is recommended to make it easier for the public to comment on specific features.
-
-
- The JSON files should use UTF-8 for the character encoding. Maximum file size is 30 MB.
-
-
- The attribute table of spatial submissions is described in the tables below. All cells need to be formatted as text (including the DEV_DATE column). Attribute table fields with header names exceeding ten characters are known to cause issues during the conversion of other file formats to GeoJSON. Therefore, the exact titles shown below must be used in spatial file attribute tables.
-
-
- Attribute table as required in the GeoJSON file
-
-
-
- FOM_OBJECT |
- GEOMETRY |
- DEV_DATE |
- NAME |
-
-
-
- Road Section |
- LineString |
- YYYY-MM-DD |
- NAME |
-
-
- Cut Block |
- Polygon |
- YYYY-MM-DD |
- NAME |
-
-
- WTRA |
- Polygon |
- Enter YYYY-MM-DD or leave blank |
- NAME |
-
-
-
-
-
- The following tables provide details on the specific requirements of certain GeoJSON attributes, which need to be met for successful submissions.
-
-
- Road Section
-
-
-
- Field |
- Description |
- Type |
- Optional |
-
-
-
- FOM_OBJECT |
- Road Section |
- text |
- N |
-
-
- GEOMETRY |
- BC Albers (EPSG:3005) or WGS 84 (EPSG:4326 and EPSG:3005) coordinate reference system |
- LineString |
- N |
-
-
- DEV_DATE |
- Development date. Format: YYYY-MM-DD |
- text |
- N |
-
-
- NAME |
- Road Section Name. Not required but is recommended in order to make it easier for the public to comment on specific features. |
- text |
- Y |
-
-
-
- Cut Block
-
-
-
- Field |
- Description |
- Type |
- Optional |
-
-
-
- FOM_OBJECT |
- Cut Block |
- text |
- N |
-
-
- GEOMETRY |
- BC Albers (EPSG:3005) or WGS 84 (EPSG:4326 and EPSG:3005) coordinate reference system |
- Polygon |
- N |
-
-
- DEV_DATE |
- Development date. Format: YYYY-MM-DD |
- text |
- N |
-
-
- NAME |
- Cut Block Name. Not required but is recommended in order to make it easier for the public to comment on specific features. |
- text |
- Y |
-
-
-
- WTRA
-
-
-
- Field |
- Description |
- Type |
- Optional |
-
-
-
- FOM_OBJECT |
- WTRA |
- text |
- N |
-
-
- GEOMETRY |
- BC Albers (EPSG:3005) or WGS 84 (EPSG:4326 and EPSG:3005) coordinate reference system |
- Polygon |
- N |
-
-
-
-
-
- Property Format
- This table specifies the description and format of required properties. All attribute table fields must be formatted as text, including the date field.
-
-
-
-
- Property |
- Description |
- Value Format |
-
-
-
- FOM_OBJECT |
- Describes the feature (Cutblock, Road, WTRA) |
- text |
-
-
- GEOMETRY |
- Indicates if feature is a polygon or linestring |
- text |
-
-
- DEV_DATE |
- Planned date to start development |
- Date string in the format "YYYY-MM-DD" |
-
-
- NAME |
- Description/identifier for the spatial object. |
- Text, maximum length 50 characters. |
-
-
-
-
- Prior to publishing a FOM, spatial data can be replaced. In order to do so, a new GeoJSON file has to be uploaded (repeat the regular upload process). This new file will then replace the old one. Successful upload/replacement can be confirmed by clicking on the “Location” button on the “Summary Screen”.
-
-
- Data submitted will be published overnight. Therefore, it will not become viewable in the public interface until the day after it was uploaded.
-
-
-
-
- FOM Example Submissions
-
- This section provides sample submission files.
-
-
- If you are using the ArcGIS conversion tool "Features To JSON" to create your spatial submission, ensure that the "GeoJSON" box is checked prior to running the tool.
-
-
-
-
-
- Please be aware that the Features To JSON tool does not accept curves, and does not automatically convert them to lines. Especially when working with feature classes from geodatabases, features containing curves will have to be converted to replace the curves with lines prior to running the Features To JSON tool. To do so, you can either convert your .gdb feature classes to ESRI Shapefiles .shp, or run the "densify" tool available in ArcMap on your feature classes containing curves. Once your shapes do not contain anymore curves, you can run the Feature To JSON tool. Alternative options for creating GeoJSON files outside of ArcMap are the Feature Manipulation Engine (FME), and the "gdal tool".
-
-
- As shown in the tables above, the projection of spatial files for upload must either be BC Albers or WGS84 (EPSG:4326 or EPSG:3005). Should your original files be in a different projection, you can use the "Projections" tool in ArcMap to convert files to the required projection. Just manually changing the projection in the "properties" tab of your file will not suffice!
-
-
-
-
- Cut Block File
-
- This sample file contains two cut blocks, with coordinates are specified in BC Albers.
-
-
- {{cutblokJSONpretty}}
-
-
-
-
- WTRA File
-
- This sample file contains one retention area, with coordinates are specified in BC Albers.
-
-
- {{wtraJSONpretty}}
-
-
-
-
- Road Section File
-
- This sample file contains one road section, with coordinates specified in WGS84 (longitude, latitude).
-
-
- {{roadJSONpretty}}
-
-
-
-
-
-
-
-
-
- How Your Data Is Handled
-
-
-
-
- The Forest Operations Map application simplifies detailed maps that users submit.
- To save space and speed up processing, the application reduces the number of points in these maps.
- It keeps the map's original shape accurate within about 2.5 meters.
- This process uses the Douglas-Peucker algorithm.
-
-
\ No newline at end of file
diff --git a/admin/src/app/foms/fom-submission/submission-format-overview.component.scss b/admin/src/app/foms/fom-submission/submission-format-overview.component.scss
deleted file mode 100644
index 8c18c59e0..000000000
--- a/admin/src/app/foms/fom-submission/submission-format-overview.component.scss
+++ /dev/null
@@ -1,43 +0,0 @@
-$space-10: 10px;
-
-.table-title {
- margin-bottom: $space-10;
- font-weight: bold;
- text-decoration: underline;
-}
-
-.field-table {
- width: 60%;
-}
-
-table {
- margin-bottom: 1em;
- th {
- background-color: #f1f1f1;
- }
-
- th, td {
- border: 1px solid #d4d4d4;
- padding: 0.35em;
- }
-}
-
-section {
- margin-top: 2.5em;
- pre {
- margin-top: -2em;
- margin-bottom: 0em;
- }
-}
-
-ol {
- margin: 1em 0;
- li {
- margin-bottom: 0.5em;
- }
-}
-
-.expand-section {
- margin-bottom: 16px;
- padding: 2px;
-}
\ No newline at end of file
diff --git a/admin/src/app/foms/fom-submission/submission-format-overview.component.ts b/admin/src/app/foms/fom-submission/submission-format-overview.component.ts
deleted file mode 100644
index f091846f5..000000000
--- a/admin/src/app/foms/fom-submission/submission-format-overview.component.ts
+++ /dev/null
@@ -1,118 +0,0 @@
-import { Component } from '@angular/core';
-import { MatExpansionModule } from '@angular/material/expansion';
-
-@Component({
- standalone: true,
- imports: [MatExpansionModule],
- selector: 'app-submission-format-overview',
- templateUrl: './submission-format-overview.component.html',
- styleUrls: ['./submission-format-overview.component.scss']
-})
-export class SubmissionFormatOverviewComponent {
-
- readonly cutblokJSONpretty: string = `
- {
- "type": "FeatureCollection",
- "crs": { "type": "name", "properties": { "name": "EPSG:3005" } },
- "features": [
- {
- "type": "Feature",
- "geometry": {
- "type": "Polygon",
- "coordinates": [ [
- [1474614.5923999995, 555392.24159999937],
- [1474537.8630999997, 555275.82469999976],
- [1474588.1340999994, 555146.17860000022],
- [1474723.0717999991, 555080.0326000005],
- [1474818.3220000006, 555138.24110000022],
- [1474902.9889000002, 555220.26209999993],
- [1474818.3220000006, 555334.03309999965],
- [1474701.9050999992, 555437.22079999931],
- [1474614.5923999995, 555392.24159999937]
- ] ]
- },
- "properties": {
- "DEV_DATE": "2022-03-30",
- "NAME": "Nature's valley"
- }
- },
- {
- "type": "Feature",
- "geometry": {
- "type": "Polygon",
- "coordinates": [ [
- [1474614.5923999995, 555392.24159999937],
- [1474537.8630999997, 555275.82469999976],
- [1474588.1340999994, 555146.17860000022],
- [1474723.0717999991, 555080.0326000005],
- [1474818.3220000006, 555138.24110000022],
- [1474902.9889000002, 555220.26209999993],
- [1474818.3220000006, 555334.03309999965],
- [1474701.9050999992, 555437.22079999931],
- [1474614.5923999995, 555392.24159999937]
- ] ]
- },
- "properties": {
- "DEV_DATE": "2022-03-31"
- }
- }
- ]
- }
- `;
-
- readonly wtraJSONpretty: string = `
- {
- "type": "FeatureCollection",
- "crs": { "type": "name", "properties": { "name": "EPSG:3005" } },
- "features": [
- {
- "type": "Feature",
- "geometry": {
- "type": "Polygon",
- "coordinates": [ [
- [1474782.182, 555366.06629999913],
- [1474701.9050999992, 555437.22079999931],
- [1474651.1418999992, 555411.07010000013],
- [1474667.5091999993, 555386.94989999942],
- [1474760.1136000007, 555331.38729999959],
- [1474782.182, 555366.06629999913]
- ] ]
- },
- "properties": {
- }
- }
- ]
- }
- `;
-
- readonly roadJSONpretty: string = `
- {
- "type": "FeatureCollection",
- "features": [
- {
- "type": "Feature",
- "geometry": {
- "type": "LineString",
- "coordinates": [
- [
- -126.786352462,
- 53.365359508
- ],
- [
- -126.786519787,
- 53.374321183
- ],
- [
- -126.775181383,
- 53.372154906
- ]
- ]
- },
- "properties": {
- "DEV_DATE": "2022-03-30"
- }
- }
- ]
- }`;
-
-}
diff --git a/admin/src/app/foms/fom-submission/submission-overview-faq.component.html b/admin/src/app/foms/fom-submission/submission-overview-faq.component.html
new file mode 100644
index 000000000..e2255ca68
--- /dev/null
+++ b/admin/src/app/foms/fom-submission/submission-overview-faq.component.html
@@ -0,0 +1,308 @@
+
+
+
+
+
+
+
+ Data Handling
+
+
+
+ Q: How does the Forest Operations Map application handle your data?
+
+
+
+ A: The Forest Operations Map application simplifies detailed maps that users submit. To save space and speed up processing, the application reduces the number of points in these maps while keeping the map's original shape accurate within about 2.5 meters. This process uses the Douglas-Peucker algorithm.
+
+
+
+
+
+
+ File Requirements
+
+
+
+ Q: What are the requirements for submitting geospatial files?
+
+
+
+ A: Each file must be in GeoJSON or, depending on the GIS software, in some cases in JSON format (sometimes the case with older versions). Shapes must be either polygons for cutblocks and wildlife tree retention areas (WTRA) or line features for road sections. A spatial submission must include at least a cutblock file or a road section file.
+
+
+
+ - File Format: GeoJSON or JSON
+ - File Encoding: UTF-8
+ -
+ Coordinate Systems:
+
+ - BC Albers (EPSG:3005), or
+ - WGS 84 (EPSG:4326).
+
+
+ - File Size: Maximum 30MB
+
+
+
+
+
+
+ Q: What is the structure for GeoJSON/JSON files?
+
+
+
+ A: Each JSON file should consist of a single GeoJSON FeatureCollection object. The geometry provided for each feature must be of type polygon or linestring depending on the feature type. Ensure your shapes do not contain curves or multipart features, and are in one of the two accepted projections (BC Albers, WGS 84).
+
+
+
+
+
+
+ Attribute Requirements
+
+
+
+ Q: What information must be included for each shape?
+
+
+
+ A: Each shape (GeoJSON feature) must include the following:
+
+
+
+
+ Field |
+ Description |
+ Type |
+ Required? |
+
+
+
+
+ GEOMETRY |
+
+ BC Albers (EPSG:3005) or WGS 84 (EPSG:4326) coordinate reference system. Coordinates must be ordered as X, Y.
+
+ Latitude and longitude are not accepted
+ |
+ Polygon for Cut Blocks and WTRAs, LineString for Road Sections |
+ Required |
+
+
+ DEV_DATE |
+
+ Development date. Format: YYYY-MM-DD
+ |
+ text |
+ Required for Cut Block and Road Section, optional for WTRA |
+
+
+ NAME |
+ Name of the feature. Not required but is recommended in order to make it easier for the public to comment on specific features. |
+ text |
+ Optional |
+
+
+
+
+
+
+
+
+ Q: How must the attribute table in the shape file be structured?
+
+
+
+ A:When using GIS software that provides an attribute table, ensure all attributes provided use the exact titles and formats specified to avoid issues during file submission.
+
+
+
The attribute table in the shapefile must look as follows, with all fields formatted as plain text.
+
+
+
+ FOM_OBJECT |
+ GEOMETRY |
+ DEV_DATE |
+ NAME |
+
+
+
+
+ Road Section |
+ LineString |
+ YYYY-MM-DD |
+ NAME |
+
+
+ Cut Block |
+ Polygon |
+ YYYY-MM-DD |
+ NAME |
+
+
+ WTRA |
+ Polygon |
+ Enter YYYY-MM-DD or leave blank |
+ NAME |
+
+
+
+
+
+
+
Property Format
+
This table specifies the description and format of required properties. All attribute table fields must be formatted as text, including the date field.
+
+
+
+ Property |
+ Description |
+ Value Format |
+
+
+
+
+ FOM_OBJECT |
+ Describes the feature (Cutblock, Road, WTRA) |
+ text |
+
+
+ GEOMETRY |
+ Indicates if feature is a polygon or linestring |
+ text |
+
+
+ DEV_DATE |
+ Planned date to start development |
+ Date string in the format "YYYY-MM-DD" (formatted as text) |
+
+
+ NAME |
+ Description/identifier for the spatial object. |
+ Text, maximum length 50 characters. |
+
+
+
+
+
+
+
+
+
+ Replacing Spatial Data
+
+
+
+ Q: How do I replace old spatial data with a new GeoJSON/JSON file?
+
+
+ A:
+
+ -
+ Upload new GeoJSON/JSON file:
+
+ - Follow the regular upload process to replace old data with a new GeoJSON/JSON file.
+
+
+ -
+ Confirm upload:
+
+ - Check the “Location” button on the “Summary Screen” to confirm successful upload or replacement.
+
+
+ -
+ Publication:
+
+ - Submitted data will be published overnight and will be visible in the public interface the next day.
+
+
+
+
+
+
+
+
+ Using ArcGIS
+
+
+
+ Q: How should I use the "Features To JSON" tool in ArcGIS for geospatial submissions?
+
+
+ A:Depending on the version of ArcGIS you are using, ensure the "GeoJSON" box is checked prior to running the tool. Note that in some versions, this box may need to be left unchecked. Refer to the specific documentation for your version to confirm the correct settings.
+
+
+
+
+
+
+
+
+
+ Handling curves and multipart features
+
+
+
+ Q: What should I do with curves in my dataset?
+
+
+ A:Important: The "Features To JSON" tool does not accept curves and does not automatically convert them to lines. Follow these steps to prepare your data:
+
+
+
+
+ -
+ Convert curves to lines:
+
+ - Option 1: Convert `.gdb` feature classes to ESRI Shapefiles `.shp`
+ - Option 2: Use the "densify" tool in ArcMap to replace curves with lines
+
+
+ -
+ Run the Features To JSON tool:
+
+ - Ensure shapes contain no curves before using the tool.
+
+
+ -
+ Alternative tools:
+
+ - Use the Feature Manipulation Engine (link to FME).
+ - Use the `gdal` tool (link to gdal tool).
+
+
+
+
+
+
+
+
+ Q: What should I do with multipart features in my dataset?
+
+
+ A: To eliminate multipart features in ArcGIS use the “Explode” tool.
+
+
+
+
+
+ Contact Information
+
+
+
+ Q: Who can I contact for more information if I still encounter issues?
+
+
+
+ A: Contact the team at nrsenquiries@gov.bc.ca
+
+
+
+
\ No newline at end of file
diff --git a/admin/src/app/foms/fom-submission/submission-overview-faq.component.scss b/admin/src/app/foms/fom-submission/submission-overview-faq.component.scss
new file mode 100644
index 000000000..4b0570009
--- /dev/null
+++ b/admin/src/app/foms/fom-submission/submission-overview-faq.component.scss
@@ -0,0 +1,24 @@
+@import "../../../assets/styles/base/base.scss";
+@import "../../../assets/styles/base/helpers.scss";
+@import "../../../assets/styles/components/expand-panel.scss";
+
+$section-margin-bottom: 30px;
+
+.faq-section {
+ .faq-title {
+ font-size: 0.9375rem;
+ font-weight: 700;
+ margin-bottom: 10px;
+ }
+ margin-bottom: $section-margin-bottom;
+}
+
+.faq-pdf {
+ margin-bottom: $section-margin-bottom;
+ a {
+ text-decoration:none;
+ }
+ a:hover {
+ color: $white;
+ }
+}
\ No newline at end of file
diff --git a/admin/src/app/foms/fom-submission/submission-overview-faq.component.ts b/admin/src/app/foms/fom-submission/submission-overview-faq.component.ts
new file mode 100644
index 000000000..c780eaa60
--- /dev/null
+++ b/admin/src/app/foms/fom-submission/submission-overview-faq.component.ts
@@ -0,0 +1,14 @@
+import { Component } from '@angular/core';
+import { MatExpansionModule } from '@angular/material/expansion';
+
+@Component({
+ standalone: true,
+ imports: [MatExpansionModule],
+ selector: 'app-submission-overview-faq',
+ templateUrl: './submission-overview-faq.component.html',
+ styleUrls: ['./submission-overview-faq.component.scss']
+})
+export class SubmissionOverviewFaqComponent {
+
+
+}
diff --git a/admin/src/app/foms/summary/summary.component.html b/admin/src/app/foms/summary/summary.component.html
index 550b730a0..49549bb1f 100644
--- a/admin/src/app/foms/summary/summary.component.html
+++ b/admin/src/app/foms/summary/summary.component.html
@@ -49,7 +49,7 @@
Details
- Woodlot License Number:
+ Woodlot Licence Number:
{{project?.woodlotLicenseNumber}}
diff --git a/admin/src/assets/sample-spatial-files/faqs-submit-geospatial-files.pdf b/admin/src/assets/sample-spatial-files/faqs-submit-geospatial-files.pdf
new file mode 100644
index 000000000..785aeebb2
Binary files /dev/null and b/admin/src/assets/sample-spatial-files/faqs-submit-geospatial-files.pdf differ
diff --git a/admin/src/assets/styles/base/helpers.scss b/admin/src/assets/styles/base/helpers.scss
index d079b5f00..2c4beefe8 100644
--- a/admin/src/assets/styles/base/helpers.scss
+++ b/admin/src/assets/styles/base/helpers.scss
@@ -11,3 +11,7 @@
font-size: 72%;
font-weight: 400;
}
+
+.text-red {
+ color: red;
+}
\ No newline at end of file
diff --git a/admin/src/assets/styles/components/expand-panel.scss b/admin/src/assets/styles/components/expand-panel.scss
new file mode 100644
index 000000000..1ed847a09
--- /dev/null
+++ b/admin/src/assets/styles/components/expand-panel.scss
@@ -0,0 +1,35 @@
+.expand-panel {
+ margin-bottom: 16px;
+ padding: 2px;
+
+ .faq-sub-title {
+ margin-top: 1rem;
+ margin-bottom: 0.5rem;
+ font-size: 1rem;
+ font-weight: 540;
+ }
+
+ ul {
+ list-style-type: disc;
+ }
+ li {
+ margin-bottom: 5px;
+ }
+
+ .panel-content-group {
+ margin-top: 1.35rem;
+ }
+
+ table {
+ margin-bottom: 1em;
+ width: 100%;
+ th {
+ background-color: #f1f1f1;
+ }
+
+ th, td {
+ border: 1px solid #d4d4d4;
+ padding: 0.35em;
+ }
+ }
+}
\ No newline at end of file
diff --git a/admin/src/assets/styles/layout/layout.scss b/admin/src/assets/styles/layout/layout.scss
index d2bc59afe..3dad43562 100644
--- a/admin/src/assets/styles/layout/layout.scss
+++ b/admin/src/assets/styles/layout/layout.scss
@@ -239,4 +239,8 @@ input, textarea {
// To be used for input that is set to readOnly(no manual input) but allows user to pick (like bsDatepicker) and input looks like normal input.
.readonly-normal {
background-color: transparent;
+}
+
+.spacer-height-1 {
+ height: 1rem;
}
\ No newline at end of file
diff --git a/api/src/app/modules/project/project.service.ts b/api/src/app/modules/project/project.service.ts
index c86af0c73..570e0993c 100644
--- a/api/src/app/modules/project/project.service.ts
+++ b/api/src/app/modules/project/project.service.ts
@@ -212,12 +212,12 @@ export class ProjectService extends DataService, Pr
}
if (projectPlanCode == ProjectPlanCodeEnum.FSP) {
if (!isNil(woodlotLicenseNumber) || !isEmpty(woodlotLicenseNumber)) {
- throw new BadRequestException("Contains invalid input for Forest Stewardship Plan FOM. Woodlot license number should be empty.");
+ throw new BadRequestException("Contains invalid input for Forest Stewardship Plan FOM. Woodlot licence number should be empty.");
}
}
else if (projectPlanCode == ProjectPlanCodeEnum.WOODLOT) {
if (!isNil(fspId)) {
- throw new BadRequestException("Contains invalid input for Woodlot License Plan FOM. FSP ID should be empty.");
+ throw new BadRequestException("Contains invalid input for Woodlot Licence Plan FOM. FSP ID should be empty.");
}
}
}
diff --git a/public/src/app/applications/app-map/marker-popup/marker-popup.component.html b/public/src/app/applications/app-map/marker-popup/marker-popup.component.html
index d59eb2a4b..fd176fe7f 100644
--- a/public/src/app/applications/app-map/marker-popup/marker-popup.component.html
+++ b/public/src/app/applications/app-map/marker-popup/marker-popup.component.html
@@ -3,12 +3,12 @@
+ *ngIf="pn.project.projectPlanCode == projectPlanCodeEnum.Woodlot">Woodlot Licence: