Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finish extracting info for services/publictymanagement page #29

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions src/constants/routes.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,7 @@ export const Routes = {
logisticrental: "/services/logisticrental",
zoomlicense: "/services/zoomLicense",
publicitymanagement: "/services/publicitymanagement",
publicitymanagementone: "/services/publicitymanagement/page-1",
publicitymanagementtwo: "/services/publicitymanagement/page-2",
joinus: "/joinus",
};
1 change: 1 addition & 0 deletions src/pages/Footer/footer.module.css
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
padding-left: 2.5vw;
padding-right: 2.5vw;
font-family: "Lora", serif;
margin-top: 30px;
}

.header {
Expand Down
168 changes: 168 additions & 0 deletions src/pages/Service/PublicityManagement/helper.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
const extractData = (data, match, isNotDupe = true) => {
let extracted = [];
let isMatch = false;
let isFairUse = false;
for (const item of data) {
if (isMatch && (isNotDupe || isFairUse) && item.type === "paragraph") {
let currParagraph = {
type: "paragraph",
content: ""
}
let currSentence = "";
for (const subitem of item.content) {
currSentence += subitem.content;
}
currParagraph.content = currSentence;
extracted.push(currParagraph);
} else if (isMatch && (isNotDupe || isFairUse) && item.type === "quote") {
let currParagraph = {
type: "quote",
content: ""
}
let currSentence = "";
for (const subitem of item.content) {
currSentence += subitem.content;
}
currParagraph.content = currSentence;
extracted.push(currParagraph);
} else if (isMatch && (isNotDupe || isFairUse) && item.type === "image") {
let currImage = {
type: "image",
content: item.content
}
extracted.push(currImage);
} else if (isMatch && (isNotDupe || isFairUse) && item.type === "file") {
let currFile = {
type: "file",
content: item.url
}
extracted.push(currFile);
} else if (isMatch && (isNotDupe || isFairUse) && item.type === "bulleted_list_item") {
let currBullet = {
type: "bullet",
content: ""
}
let currSentence = ""
for (const subitem of item.content) {
currSentence += subitem.content;
}
currBullet.content = currSentence
extracted.push(currBullet);
} else if (isMatch && (isNotDupe || isFairUse) && item.type === "numbered_list_item") {
let currNumber = {
type: "number",
content: ""
}
let currSentence = ""
for (const subitem of item.content) {
currSentence += subitem.content;
}
currNumber.content = currSentence
extracted.push(currNumber);
} else if (item.type === "heading" && (isNotDupe || isFairUse) && item.content === match) {
isMatch = true;
} else if (item.type === "heading" && item.content === "Fair Use") {
isFairUse = true;
} else if (isMatch === true) {
break;
}
}
return extracted;
}

export const extractAnnouncements = (data) => {
return extractData(data, "Announcements");
}

export const extractProcess = (data) => {
return extractData(data, "Process for Publicity Requests");
}

export const extractNotes = (data) => {
return extractData(data, "Notes")
}

export const extractElligibility = (data) => {
return extractData(data, "Eligibility to use Publicity Platforms")
}

export const extractGeneral = (data) => {
return extractData(data, "General Guidelines on Publicity Materials")
}

export const extractPublicityMaterials = (data) => {
return extractData(data, "Publicity Materials Required")
}

export const extractMaterialsEDM = (data) => {
return extractData(data, "Electronic Digital Mailer (EDM)")
}

export const extractMaterialsInstagram = (data) => {
return extractData(data, "Instagram")
}

export const extractMaterialsTelegram = (data) => {
return extractData(data, "Telegram Channel")
}

export const extractMaterialsNoticeboards = (data) => {
return extractData(data, "Noticeboards")
}

export const extractFairUse = (data) => {
return extractData(data, "Fair Use")
}

export const extractFairUseEDM = (data) => {
return extractData(data, "Electronic Digital Mailer (EDM)", false)
}

export const extractFairUseTelegram = (data) => {
return extractData(data, "Telegram Channel", false)
}

export const extractFairUseInstagram = (data) => {
return extractData(data, "Instagram Story or Post Sharing")
}

export const extractPDP = (data) => {
return extractData(data, "Personal Data Protection")
}

export const extractApproval = (data) => {
return extractData(data, "Approval of Publicity Materials")
}

export const extractNUSSUOrganisations = (data) => {
return extractData(data, "NUSSU Constituent Clubs, Associate Bodies and other NUS-registered Organisations")
}

export const extractCouncilProjects = (data) => {
return extractData(data, "Council, EXCO, Committees or Projects")
}

export const extractDesignConsiderations = (data) => {
return extractData(data, "Design Considerations")
}

export const extractUnionBrandingRequirements = (data) => {
return extractData(data, "Union branding requirements")
}

export const extractDesign= (data) => {
return extractData(data, "Design")
}

export const extractContent = (data) => {
return extractData(data, "Content")
}

export const extractLinks= (data) => {
return extractData(data, "Links")
}

export const extractDirectives = (data) => {
return extractData(data, "Directives")
}

Loading