Merged PR 1060: rich text field and pdf create for appeal

rich text field and pdf create for appeal

Related work items: #9494
This commit is contained in:
Robert Bond
2024-01-16 14:24:51 +00:00
30 changed files with 592 additions and 288 deletions
+46
View File
@@ -474,6 +474,52 @@ export const uploadPDFRepFiles = async (
);
};
export const uploadPDFAppealFiles = async (
formContent,
containerName,
foldername,
repType
) => {
const containerToken = await createContainerSas(containerName);
const sasUrl = `${STORAGE_PATH}/${containerName}?${containerToken}`;
const containerClient = new ContainerClient(sasUrl);
const files = formContent;
console.log(formContent, containerName, foldername);
console.log(
"rep pdf files...",
files,
Object.keys(files).length,
foldername
);
// console.log(`files[${prop}] = ${files[prop][0].size}`);
console.log(foldername + "/files/" + formContent.split("tmp/")[1]);
const blobName = foldername + "/" + formContent.split("tmp/")[1];
console.log(blobName);
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
const uploadBlobResponse = await blockBlobClient.uploadFile(formContent);
const tags = {
containerid: containerName,
caseID: foldername.split("/")[0],
documentType: repType,
blobType: "RepresentationPDF",
};
console.log("the tags:", tags);
const withTags = await blockBlobClient.setTags(tags);
const withMeta = await blockBlobClient.setMetadata(tags);
console.log(
`Uploaded block blob ${files} successfully`,
uploadBlobResponse.requestId
);
};
export const uploadPDFCaseFiles = async (
formContent,
containerName,
+41 -10
View File
@@ -742,8 +742,7 @@ export const getWatchedCases = (loggedInUserId) => {
export const getWatchedCasesProxy = (loggedInUserId) => {
return axios
.get(
BASE_URL +
"/api/endpoint/getwatchedcasesproxy_api?loggedInUserId=" +
"/api/endpoint/getwatchedcasesproxy_api?loggedInUserId=" +
loggedInUserId
)
.then((res) => res.data)
@@ -1373,7 +1372,7 @@ export const generateRepPDF = async (formValues, containerID, casefolderID) => {
method: "post",
url: queryUrl,
data: formValues,
headers: { "content-type": "multipart/form-data" },
//headers: { "content-type": "multipart/form-data" },
};
//console.log(config);
@@ -1384,6 +1383,38 @@ export const generateRepPDF = async (formValues, containerID, casefolderID) => {
console.log("this serror", error);
}
};
export const generateAppealPDF = async (
formValues,
containerID,
casefolderID
) => {
//let files = filesObj;
//console.log("generateAppealPDF function: " + formValues);
// var formData = new FormData();
// formValues.append("appealData", JSON.stringify(formValues));
// formValues.append("containerID", containerID);
// formValues.append("casefolderID", casefolderID);
var queryUrl = "/api/file/generateappealpdf";
const config = {
method: "post",
url: queryUrl,
data: formValues,
//headers: { "content-type": "multipart/form-data" },
};
//console.log(config);
try {
const res = await axios(config);
return res.data;
} catch (error) {
console.log("this serror", error);
}
};
export const getFilesFromBlob = (containerName, casefolderID) => {
console.log(
" get files from blob",
@@ -1542,13 +1573,13 @@ export const sendEmail = async (
"personalisation": personalisation,
};
console.log(
"hwewwew: ",
templateId,
emailAddress,
personalisation,
reference
);
// console.log(
// "hwewwew: ",
// templateId,
// emailAddress,
// personalisation,
// reference
// );
var queryUrl = "/api/email/notify";
var config = {
+277 -109
View File
@@ -25,6 +25,7 @@ import {
getThumbnailIconByExtension,
bytesToSize,
} from "../utils";
import dynamic from "next/dynamic";
import {
addYears,
@@ -35,6 +36,8 @@ import {
subDays,
parseISO,
} from "date-fns";
const ReactQuill = dynamic(() => import("react-quill"), { ssr: false });
import "react-quill/dist/quill.snow.css";
const RenderTextfield = ({
id,
@@ -66,7 +69,16 @@ const RenderTextfield = ({
{errorMsg}
</span>
)}
<input {...input} className={className} name={name} id={id} />
<input
{...input}
className={className}
name={name}
id={id}
maxLength={
custom.hasOwnProperty("maxFieldLength") &&
custom.maxFieldLength
}
/>
</div>
</>
);
@@ -82,6 +94,7 @@ export function Textfield(props) {
formProps,
parentField,
parentFieldShowOnValue,
maxFieldLength,
hint,
} = props;
const required = (value) => (value ? undefined : "Required");
@@ -134,6 +147,7 @@ export function Textfield(props) {
validate={eval(validation)}
label={props.label}
errorMsg="Is required"
maxFieldLength={props.maxFieldLength}
/>
)
) : (
@@ -146,6 +160,7 @@ export function Textfield(props) {
validate={eval(validation)}
label={props.label}
errorMsg="Is required"
maxFieldLength={props.maxFieldLength}
/>
)}
</div>
@@ -193,6 +208,11 @@ const RenderMultiline = ({
rows={rows}
className={className}
{...input}
maxLength={
custom.hasOwnProperty("maxFieldLength")
? custom.maxFieldLength
: ""
}
></textarea>
</div>
</>
@@ -208,6 +228,7 @@ export function MultiLinefield(props) {
parentField,
parentFieldShowOnValue,
validation,
maxFieldLength,
} = props;
const required = (value) => (value ? undefined : "Is required");
@@ -249,6 +270,7 @@ export function MultiLinefield(props) {
className="govuk-textarea govuk-input--width-30"
aria-describedby={props.name + "-hint"}
validate={eval(validation)}
maxFieldLength={props.maxFieldLength}
/>
</div>
)
@@ -275,6 +297,146 @@ export function MultiLinefield(props) {
className="govuk-textarea govuk-input--width-30"
aria-describedby={props.name + "-hint"}
validate={eval(validation)}
maxFieldLength={props.maxFieldLength}
/>
</div>
)}
</>
);
}
export const RenderRichMultiline = ({
id,
className,
rows,
datafieldname,
name,
label,
input,
meta: { touched, error },
...custom
}) => {
const [editValue, setEditValue] = useState(
input.value != null ? input.value : ""
);
const changeEdit = (valStr) => {
setEditValue(valStr);
input.onChange(valStr);
};
var modules = {
toolbar: [
[{ "header": [1, 2, false] }],
["bold", "italic", "underline", "blockquote"],
[{ "list": "ordered" }, { "list": "bullet" }],
["clean"],
],
};
return (
<>
<label className="govuk-label" htmlFor={name}>
{label}
</label>
<ReactQuill
modules={modules}
theme="snow"
value={editValue}
onChange={changeEdit}
/>
<textarea
{...input}
id={id}
name={name}
rows={rows}
className={className}
value={editValue}
style={{ display: "none" }}
></textarea>
</>
);
};
export function RichMultiLinefield(props) {
const {
name,
label,
form,
formProps,
parentField,
parentFieldShowOnValue,
validation,
maxFieldLength,
} = props;
const required = (value) => (value ? undefined : "Is required");
var showIfHasParentShowValue =
parentField != false &&
!_.isEmpty(formProps[form]) &&
_.has(formProps[form].values, parentField) &&
parentFieldShowOnValue.indexOf(
formProps[form].values[parentField].toString()
) > -1;
(showIfHasParentShowValue == parentField) != false &&
showIfHasParentShowValue;
//console.log(showIfHasParentShowValue, formProps[form].values[parentField]);
return (
<>
{parentField != false ? (
showIfHasParentShowValue && (
<div>
<h1 className="govuk-label-wrapper">
<label className="govuk-label" htmlFor={props.name}>
{FieldsTranslations(props.label)}
</label>
</h1>
<div
id={props.name + "-hint"}
className="govuk-hint govuk-!-font-size-14"
>
Do not include personal or financial information.
</div>
<Field
name={props.name}
id={props.name}
component={RenderRichMultiline}
type="text"
rows="5"
className="govuk-textarea govuk-input--width-30"
aria-describedby={props.name + "-hint"}
validate={eval(validation)}
maxFieldLength={props.maxFieldLength}
/>
</div>
)
) : (
<div className="govuk-form-group">
<h1 className="govuk-label-wrapper">
<label className="govuk-label" htmlFor={props.name}>
{FieldsTranslations(props.label)}
</label>
</h1>
<div
id={props.name + "-hint"}
className="govuk-hint govuk-!-font-size-14"
>
Do not include personal or financial information.
</div>
<Field
name={props.name}
id={props.name}
component={RenderRichMultiline}
type="text"
rows="5"
className="govuk-textarea govuk-input--width-30"
aria-describedby={props.name + "-hint"}
validate={eval(validation)}
maxFieldLength={props.maxFieldLength}
/>
</div>
)}
@@ -1087,6 +1249,7 @@ export function NumericField(props) {
validate={eval(validation)}
component={RenderTextfield}
label={label}
maxFieldLength={props.maxFieldLength}
/>
</div>
)
@@ -1121,6 +1284,7 @@ export function DecimalField(props) {
formProps,
parentFieldShowOnValue,
parentField,
maxFieldLength,
} = props;
const required = (value) => (value ? undefined : "Required");
@@ -1157,6 +1321,7 @@ export function DecimalField(props) {
validate={eval(validation)}
component={RenderTextfield}
label={props.label}
maxFieldLength={props.maxFieldLength}
/>
</div>
)
@@ -1431,121 +1596,124 @@ const RenderFileUpload = (field) => {
});
};
return <>
<Dropzone
accept="application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,image/tiff,image/jpeg,application/zip"
onDrop={(filesToUpload, e) => {
const renamedAcceptedFiles = filesToUpload.map(
(file) =>
new File(
[file],
`${getDocumentType(field.documentTypeCode)}_${
file.name
}`,
{
type: file.type,
}
)
);
field.input.onChange(renamedAcceptedFiles);
}}
>
{({ getRootProps, getInputProps }) => (
<>
{/* {field.hint != false && (
return (
<>
<Dropzone
accept="application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,image/tiff,image/jpeg,application/zip"
onDrop={(filesToUpload, e) => {
const renamedAcceptedFiles = filesToUpload.map(
(file) =>
new File(
[file],
`${getDocumentType(field.documentTypeCode)}_${
file.name
}`,
{
type: file.type,
}
)
);
field.input.onChange(renamedAcceptedFiles);
}}
>
{({ getRootProps, getInputProps }) => (
<>
{/* {field.hint != false && (
<div className="govuk-hint">ss{t(field.hint)}</div>
)}
<div className="govuk-form-group"></div> */}
<section className="container">
<div {...getRootProps({ style })}>
{" "}
<input id={field.id} {...getInputProps()} />
<div>
{t(
"newappeal:new-appeal-fileupload-drop-label"
)}
<section className="container">
<div {...getRootProps({ style })}>
{" "}
<input id={field.id} {...getInputProps()} />
<div>
{t(
"newappeal:new-appeal-fileupload-drop-label"
)}
</div>
<em>
(
{t(
"newappeal:new-appeal-fileupload-file-list-label"
)}
)
</em>
</div>
<em>
(
{t(
"newappeal:new-appeal-fileupload-file-list-label"
)}
)
</em>
</div>
<aside>{thumbs}</aside>
</section>
</>
<aside>{thumbs}</aside>
</section>
</>
)}
</Dropzone>
{field.meta.touched && field.meta.error && (
<span className="error">{field.meta.error}</span>
)}
</Dropzone>
{field.meta.touched && field.meta.error && (
<span className="error">{field.meta.error}</span>
)}
{files && Array.isArray(files) && (
<ul>
{files.map((file, i) => (
<div
key={file.name}
className="govuk-!-margin-bottom-5 fileThumb"
>
<img
src={getThumbnailIcon(file, file.type)}
alt={file.name}
width="50"
/>
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
{/* {file.name.slice(file.name.indexOf("_") + 1)} ( */}{" "}
{file.name}( ({bytesToSize(file.size)})
{files && Array.isArray(files) && (
<ul>
{files.map((file, i) => (
<div
key={file.name}
className="govuk-!-margin-bottom-5 fileThumb"
>
<img
src={getThumbnailIcon(file, file.type)}
alt={file.name}
width="50"
/>
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
{/* {file.name.slice(file.name.indexOf("_") + 1)} ( */}{" "}
{file.name}( ({bytesToSize(file.size)})
</span>
</div>
))}
</ul>
)}
{blobList.map((blob, i) => (
<div
key={blob.name + "_" + i}
className="govuk-!-margin-bottom-5 fileThumb govuk-!-margin-top-5"
>
<div className="">
<span
className="govuk-summary-list__actionLink watched_link govuk-!-margin-right-5 govuk-!-text-align-left"
onClick={() => {
deleteThisBlob(
field.containerID,
blob.name,
blob.hasheddeletepath,
blob.hashgetblobs,
field.ticketnumber
);
}}
title="Remove this file"
>
&minus;
</span>
</div>
))}
</ul>
)}
{blobList.map((blob, i) => (
<div
key={blob.name + "_" + i}
className="govuk-!-margin-bottom-5 fileThumb govuk-!-margin-top-5"
>
<div className="">
<span
className="govuk-summary-list__actionLink watched_link govuk-!-margin-right-5 govuk-!-text-align-left"
onClick={() => {
deleteThisBlob(
field.containerID,
blob.name,
blob.hasheddeletepath,
blob.hashgetblobs,
field.ticketnumber
);
}}
title="Remove this file"
<img
src={getThumbnailIconByExtension(blob.name)}
alt={blob.name}
width="50"
/>
<Link
key={i}
scroll={false}
href={
"/api/file/downloadblob?container=" +
field.containerID +
"&casefolderID=" +
field.ticketnumber +
"&blobname=" +
blob.name +
blob.hashedfilepath
}
className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5 govuk-link"
>
&minus;
</span>
{blob.name.slice(blob.name.indexOf("_") + 1)}(
{bytesToSize(blob.contentLength)})
</Link>
</div>
<img
src={getThumbnailIconByExtension(blob.name)}
alt={blob.name}
width="50"
/>
<Link
key={i}
scroll={false}
href={
"/api/file/downloadblob?container=" +
field.containerID +
"&casefolderID=" +
field.ticketnumber +
"&blobname=" +
blob.name +
blob.hashedfilepath
}
className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5 govuk-link">
{blob.name.slice(blob.name.indexOf("_") + 1)}({bytesToSize(blob.contentLength)})
</Link>
</div>
))}{" "}
</>;
))}{" "}
</>
);
};
+6
View File
@@ -24,6 +24,7 @@ const RenderTextfield = ({
meta: { touched, error },
...custom
}) => {
console.log(custom);
return (
<>
<div
@@ -53,6 +54,10 @@ const RenderTextfield = ({
id={id}
type={type}
disabled={disabled ? true : false}
maxLength={
custom.hasOwnProperty("maxFieldLength") &&
custom.maxFieldLength
}
/>
</div>
</>
@@ -469,6 +474,7 @@ let AboutYou = (props) => {
className="govuk-input govuk-input--width-20"
validate={[required]}
label={t("newappeal:about-you-on-behalf-label")}
maxFieldLength="25"
/>
<div className="govuk-form-group">
<details className="govuk-details" data-module="govuk-details">
+19
View File
@@ -10,6 +10,7 @@ import {
PickList,
Radiofield,
ReadOnlyfield,
RichMultiLinefield,
Textfield,
YesNofield,
} from "../elements";
@@ -114,6 +115,7 @@ export default function BuildField(props) {
parentFieldShowOnValue={props.parentFieldShowOnValue}
validation={props.validation}
hint={props.hint}
maxFieldLength={props.maxFieldLength}
/>
);
break;
@@ -142,6 +144,21 @@ export default function BuildField(props) {
parentField={props.parentField}
parentFieldShowOnValue={props.parentFieldShowOnValue}
validation={props.validation}
maxFieldLength={props.maxFieldLength}
/>
);
break;
case "{E0DECE4B-6666-4a8f-A065-082708572369}":
return (
<RichMultiLinefield
name={props.datafieldname}
label={props.label}
form={props.props.props.form}
formProps={props.props.props.props.form}
parentField={props.parentField}
parentFieldShowOnValue={props.parentFieldShowOnValue}
validation={props.validation}
maxFieldLength={props.maxFieldLength}
/>
);
break;
@@ -155,6 +172,7 @@ export default function BuildField(props) {
validation={props.validation}
parentField={props.parentField}
parentFieldShowOnValue={props.parentFieldShowOnValue}
maxFieldLength={props.maxFieldLength}
/>
);
break;
@@ -168,6 +186,7 @@ export default function BuildField(props) {
validation={props.validation}
parentField={props.parentField}
parentFieldShowOnValue={props.parentFieldShowOnValue}
maxFieldLength={props.maxFieldLength}
/>
);
break;
+5
View File
@@ -36,6 +36,7 @@ export default function BuildRow(props) {
var rows = xpath.select("//label/@description", doc);
var fieldtype = xpath.select("//@classid", doc);
var validation = xpath.select("//@validation", doc);
var maxFieldLength = xpath.select("//@maxFieldLength", doc);
var datafieldname = xpath.select("//@datafieldname", doc);
var datafieldcontent = xpath.select(
"//@datafieldcontent",
@@ -73,6 +74,9 @@ export default function BuildRow(props) {
? validation[0].value
: [];
maxFieldLength =
!_.isEmpty(maxFieldLength) && maxFieldLength[0].value;
parentField =
!_.isEmpty(parentField) && parentField[0].value;
@@ -150,6 +154,7 @@ export default function BuildRow(props) {
requiredDocumentLabel={requiredDocumentLabel}
requiredDocumentValue={requiredDocumentValue}
validation={validation}
maxFieldLength={maxFieldLength}
dateStart={dateStart}
dateEnd={dateEnd}
setDocumentsList={props.props.setDocumentsList}
+56 -3
View File
@@ -15,7 +15,13 @@ import {
setNewAppealProgress,
} from "../../store/appealType/action";
import { getFormCollectionByID, getProgressObj } from "../utils";
import { updateCase, patchCase, uploadFiles, sendEmail } from "../../actions";
import {
updateCase,
patchCase,
uploadFiles,
sendEmail,
generateAppealPDF,
} from "../../actions";
import { FieldsTranslations } from "../elements";
import jsonpath from "jsonpath";
@@ -132,13 +138,60 @@ let BuildSection = (props) => {
) => {
let incidentId = props.appealType.caseReference.incidentid;
let updateBody = values || {};
let buildAppealFilesArray = [];
console.log("attached docs: - ", buildAppealFilesArray);
let filesUplaodObj = Object.keys(values)
.filter(function (k) {
return k.indexOf("pinswg_fileUpload") == 0;
})
.reduce(function (newData, k) {
newData[k] = values[k];
return newData;
}, {});
console.log(filesUplaodObj);
for (let key in filesUplaodObj) {
for (let j in filesUplaodObj[key]) {
buildAppealFilesArray.push({
"name": filesUplaodObj[key][j].name,
"size": filesUplaodObj[key][j].size,
});
}
}
console.log(buildAppealFilesArray);
Object.assign(values, { "filesList": buildAppealFilesArray });
setSavingStatus(useSaveStatus);
uploadAppealFiles(values);
props.setNewAppealProgress(
getProgressObj(formXML, titleList, mandatoryFieldsData, props)
console.log(
"\n////////////////////////\n appeal pdf payload",
values,
props.props.accountDetails.containerID,
props.appealType.caseReference.ticketnumber,
"\n////////////////////////\n"
);
let pdfObj = values;
Object.assign(pdfObj, {
"containerID": props.props.accountDetails.containerID,
"casefolderID": props.appealType.caseReference.ticketnumber,
});
generateAppealPDF(
pdfObj,
props.props.accountDetails.containerID,
props.appealType.caseReference.ticketnumber
),
props.setNewAppealProgress(
getProgressObj(formXML, titleList, mandatoryFieldsData, props)
);
let appTypeCollection = getFormCollectionByID(
props.appealType.appealTypeID
);
+49 -11
View File
@@ -22,6 +22,7 @@ import ReactPDF, {
Font,
} from "@react-pdf/renderer";
import _ from "lodash";
import Html from "react-pdf-html";
import { DOMParser, XMLSerializer } from "@xmldom/xmldom";
@@ -59,7 +60,11 @@ export const AppealRow_pdf = (props) => {
},
logoImage: { width: "200pt" },
questionBullet: { width: "5%", fontSize: 12 },
questionText: { width: "30%", fontSize: 12 },
questionText: {
width: "35%",
fontSize: 12,
marginRight: 5,
},
questionTextMid: { width: "80%", fontSize: 12 },
questionTextWide: { width: "95%", fontSize: 12, marginBottom: 5 },
questionAnswer: {
@@ -84,9 +89,8 @@ export const AppealRow_pdf = (props) => {
},
questionAnswerWide: {
color: "#757575",
width: "95%",
width: "100%",
fontSize: 12,
marginLeft: "5%",
border: 1,
borderColor: "#eee",
backgroundColor: "white",
@@ -182,7 +186,6 @@ export const AppealRow_pdf = (props) => {
case "{5B773807-9FB2-42db-97C3-7A91EFF8ADFF}":
return (
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
@@ -283,7 +286,46 @@ export const AppealRow_pdf = (props) => {
</View>
);
break;
case "{E0DECE4B-6666-4a8f-A065-082708572369}":
return (
<View
style={{
flexDirection: "column",
marginBottom: 10,
}}
>
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
}}
>
<Text
style={
styles.questionTextWide
}
>
{rows[0].value}
</Text>
</View>
<View
style={
styles.questionAnswerWide
}
>
<Html style={styles.richArea}>
{
props.props[
datafieldname[0]
.value
]
}{" "}
</Html>
</View>
</View>
);
break;
default:
return (
<View
@@ -297,12 +339,8 @@ export const AppealRow_pdf = (props) => {
{/* {FieldsTranslations(rows[0].value)} */}
{rows[0].value}
</Text>
<Text
style={
styles.questionAnswerWide
}
>
<Text style={styles.questionAnswer}>
{" "}
{
props.props[
datafieldname[0].value
@@ -61,7 +61,7 @@ const styles = StyleSheet.create({
},
questionAnswerWide: {
color: "#757575",
width: "95%",
width: "100%",
fontSize: 12,
marginLeft: "5%",
border: 1,
@@ -121,7 +121,7 @@ export const planningappeals78_pdf = ({ docProps }) => {
xmlStr = xmlStr.replace(/> <"/g, "><");
xmlStr = xmlStr.toString();
console.log(xmlStr);
//console.log(xmlStr);
const parser = new DOMParser();
var doc = parser.parseFromString(xmlStr, "text/xml");
@@ -177,74 +177,6 @@ export const planningappeals78_pdf = ({ docProps }) => {
/>
</View>
<View style={styles.section}>
<View
style={{
marginTop: 10,
fontFamily: "Helvetica-Bold",
}}
>
<Text style={{ fontSize: 14 }}>Case details</Text>
</View>
<View style={styles.sectionContainer}>
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
}}
>
<Text style={styles.questionBullet}>1.</Text>
<Text style={styles.questionText}>
{t(
"myrepresentations:s78-section-question-1"
)}
:
</Text>
<Text style={styles.questionAnswer}>
{values.caseRef}
</Text>
</View>
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
}}
></View>
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
}}
>
<Text style={styles.questionBullet}>3.</Text>
<Text style={styles.questionText}>
Site address/grid ref:
</Text>
<Text style={styles.questionAnswer}>
{values.siteAddress}
</Text>
</View>
<View
wrap={false}
style={{
flexDirection: "row",
marginBottom: 10,
}}
>
<Text style={styles.questionBullet}>4.</Text>
<Text style={styles.questionText}>
Case Type:
</Text>
<Text style={styles.questionAnswer}>
{appealTypeValue.value}
</Text>
</View>
</View>
</View>
{Object.keys(titles).map((key) => (
<View key={key}>
<View
@@ -305,12 +237,12 @@ export const planningappeals78_pdf = ({ docProps }) => {
}}
>
<Text style={styles.questionBullet}>11.</Text>
<Text style={styles.questionText}>
<Text style={styles.questionTextWide}>
List of attached files
</Text>
<View
style={[
styles.questionAnswer,
styles.questionAnswerWide,
{ flexDirection: "column" },
]}
>
+3 -3
View File
@@ -64,7 +64,7 @@
<labels>
<label description="What was the LPA Application Reference number given to your application?" />
</labels>
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -166,7 +166,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -250,7 +250,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
+4 -4
View File
@@ -594,7 +594,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -606,7 +606,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -861,7 +861,7 @@
<labels>
<label description="Development Description" />
</labels>
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -878,7 +878,7 @@
<labels>
<label description="LPA Application Reference" />
</labels>
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
+6 -6
View File
@@ -61,7 +61,7 @@
<labels>
<label description="Please enter details of the proposed development" />
</labels>
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -73,7 +73,7 @@
<labels>
<label description="What was the LPA Application Reference number given to your application?" />
</labels>
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -211,7 +211,7 @@
<labels>
<label description="Please explain why the inspector needs to enter the site" />
</labels>
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" disabled="false" />
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -223,7 +223,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -253,7 +253,7 @@
<labels>
<label description="What is the area of floor space proposed? (in square metres). If no new floor space is proposed, please enter 0." />
</labels>
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -331,7 +331,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -594,7 +594,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -606,7 +606,7 @@
<labels>
<label description="Floor Space in square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -803,7 +803,7 @@
<labels>
<label description="Please explain why the inspector needs to enter the site" />
</labels>
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" disabled="false" />
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -815,7 +815,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -845,7 +845,7 @@
<labels>
<label description="What is overall the size of the appeal site, as shown on the red line boundary plan? (in hectares)" />
</labels>
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -1122,7 +1122,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+7 -7
View File
@@ -46,7 +46,7 @@
<labels>
<label description="Please enter details of the proposed development" />
</labels>
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -58,7 +58,7 @@
<labels>
<label description="What was the LPA Application Reference number given to your application?" />
</labels>
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -196,7 +196,7 @@
<labels>
<label description="Please explain why the inspector needs to enter the site" />
</labels>
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" disabled="false" />
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -208,7 +208,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -238,13 +238,13 @@
<labels>
<label description="What is overall the size of the appeal site, as shown on the red line boundary plan? (in hectares)" />
</labels>
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" parentField="pinswg_hascas_appealtype" parentFieldShowOnValue="846040001" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" parentField="pinswg_hascas_appealtype" parentFieldShowOnValue="846040001" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
<label description="What is the area of floor space proposed? (in square metres). If no new floor space is proposed, please enter 0." />
</labels>
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -322,7 +322,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -594,7 +594,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -861,7 +861,7 @@
<labels>
<label description="Development Description" />
</labels>
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -878,7 +878,7 @@
<labels>
<label description="LPA Application Reference" />
</labels>
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -40,7 +40,7 @@
<labels>
<label description="Please enter details of the proposed works." />
</labels>
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -52,7 +52,7 @@
<labels>
<label description="What was the LPA Application Reference number given to your application?" />
</labels>
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -172,7 +172,7 @@
<labels>
<label description="Please explain why the inspector needs to enter the site" />
</labels>
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" disabled="false" />
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -184,7 +184,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -262,7 +262,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+2 -2
View File
@@ -316,7 +316,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -328,7 +328,7 @@
<labels>
<label description="Floor Space In Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+1 -1
View File
@@ -40,7 +40,7 @@
<labels>
<label description="Development description" />
</labels>
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
+13 -7
View File
@@ -40,7 +40,7 @@
<labels>
<label description="Development description" />
</labels>
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control validation="[required]" id="pinswg_developmentdescription" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -52,7 +52,7 @@
<labels>
<label description="What was the LPA Application Reference number given to your application?" />
</labels>
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control validation="[required]" id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="12" disabled="false" />
</row>
<row>
<labels>
@@ -190,7 +190,7 @@
<labels>
<label description="Please explain why the inspector needs to enter the site" />
</labels>
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" disabled="false" />
<control id="pinswg_whyisinspectorneededonsite" parentField="pinswg_inspectorneededonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_whyisinspectorneededonsite" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -202,7 +202,7 @@
<labels>
<label description="Please set out the potential health and safety issues" />
</labels>
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" disabled="false" />
<control id="pinswg_outlinehealthandsafetyissuesonsite" parentField="pinswg_healthandsafetyissuesonsite" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_outlinehealthandsafetyissuesonsite" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -232,13 +232,13 @@
<labels>
<label description="What is overall the size of the appeal site, as shown on the red line boundary plan? (in hectares)" />
</labels>
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control validation="[required]" id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
<label description="What is the area of floor space proposed? (in square metres). If no new floor space is proposed, please enter 0." />
</labels>
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control validation="[required]" id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
@@ -316,7 +316,7 @@
<labels>
<label description="Please provide details of the appeals including our reference number, if known" />
</labels>
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" disabled="false" />
<control id="pinswg_additionalappealsmadedetails" parentField="pinswg_additionalappealsmade" parentFieldShowOnValue="Yes" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="pinswg_additionalappealsmadedetails" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -342,6 +342,12 @@
<label description="Section" />
</labels>
<rows>
<row>
<labels>
<label description="Please submit your statement of case" />
</labels>
<control validation="[required]" id="pinswg_statementofcase" classid="{E0DECE4B-6666-4a8f-A065-082708572369}" datafieldname="pinswg_statementofcase" maxFieldLength="5000" disabled="false" />
</row>
<row>
<labels>
<label description="What procedure would you like the appeal to follow? More information on this can be found in the guidance notes." />
+3 -3
View File
@@ -591,7 +591,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -858,7 +858,7 @@
<labels>
<label description="Development Description" />
</labels>
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" disabled="false" />
<control id="pinswg_developmentdescription" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_developmentdescription" maxFieldLength="800" disabled="false" />
</row>
</rows>
</section>
@@ -875,7 +875,7 @@
<labels>
<label description="LPA Application Reference" />
</labels>
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" disabled="false" />
<control id="pinswg_lpaapplicationreference" classid="{4273EDBD-AC1D-40d3-9FB2-095C621B552D}" datafieldname="pinswg_lpaapplicationreference" maxFieldLength="800" disabled="false" />
</row>
<row>
<labels>
@@ -523,7 +523,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -535,7 +535,7 @@
<labels>
<label description="Floor Space in square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space in square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+2 -2
View File
@@ -360,7 +360,7 @@
<labels>
<label description="Area Of Site in Hectares" />
</labels>
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" disabled="false" />
<control id="pinswg_areaofsiteinhectaresdec" classid="{C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E}" datafieldname="pinswg_areaofsiteinhectaresdec" maxFieldLength="4" disabled="false" />
</row>
<row>
<labels>
@@ -372,7 +372,7 @@
<labels>
<label description="Floor Space In Square Meters" />
</labels>
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" disabled="false" />
<control id="pinswg_floorspaceinsquaremeters" classid="{C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F}" datafieldname="pinswg_floorspaceinsquaremeters" maxFieldLength="5" disabled="false" />
</row>
<row>
<labels>
+20 -20
View File
@@ -111,20 +111,20 @@ export default async function handler(req, res) {
let appealBodyObj = req.body; //JSON.parse(req.body);
console.log(
"//////////////////////\nappealBodyObj" +
req +
"\n//////////////////////\n"
);
// console.log(
// "//////////////////////\nappealBodyObj" +
// req +
// "\n//////////////////////\n"
// );
console.log(
"//////////////////////\nappealBodyObj" +
req.body +
"\n//////////////////////\n"
);
var containerID = req.query.containerID;
var casefolderID = req.query.casefolderID;
var caseRef = req.query.caseRef;
var containerID = appealBodyObj.containerID;
var casefolderID = appealBodyObj.casefolderID;
var caseRef = appealBodyObj.caseRef;
//console.log("there are files:", Object.keys(req.files).length);
@@ -170,18 +170,12 @@ export default async function handler(req, res) {
}
);
console.log(blobProgress);
//console.log(blobProgress);
//if (hashAPIPath(checkquerypath) == "?hash=" + checkHash) {
// //createContainer(containerID).then((containerName) => {
// console.log("does this get folder name:", containerID, casefolderID);
console.log(
"///////////////////////////////////\n file created: \n" +
`tmp/${blobProgress.pinswg_name}.pdf` +
"\n/////////////////////////"
);
// createRepBlob(req.body, containerID, caseRef);
ReactPDF.render(
@@ -189,11 +183,17 @@ export default async function handler(req, res) {
`tmp/${blobProgress.pinswg_name}.pdf`
);
// uploadPDFAppealFiles(
// `tmp/${appealBodyObj.repfile_name}.pdf`,
// containerID,
// caseRef + "/" + appealBodyObj.pinswg_name
// );
console.log(
"///////////////////////////////////\n file created: \n" +
`tmp/${blobProgress.pinswg_name}.pdf` +
"\n/////////////////////////"
);
uploadPDFAppealFiles(
`tmp/${appealBodyObj.repfile_name}.pdf`,
containerID,
caseRef + "/" + appealBodyObj.pinswg_name
);
// to do upload file to storage account