decap-cms: Frequently running into slowness and rate limiting.
Issue: Our admin users are currently trying to update information relating to courses, assessment and subject areas. Many time the Relation widget is extremely slow to load, and often searching for items takes an incredible time, or hits rate limits. i.e. accessing a collection from the menu shows ’ Loading Entries -> Caching Entries ->This may take several minutes’ and never loads.
The user logs in. Clicks “NCEA Standards” Tries to modify the courses relation.
- The courses take many seconds to appear in the relation widget, sometimes 10+ seconds.
The user tries to find an assessment by opening the “NCEA Standards” collection. Infinite scroll towards the right assessment, more records load, repeat. Eventually can not find the standard quickly, so try searching it. Now the search loads forever.
Im not entirely sure this is a bug within CMS or just our setup is not quite the right fit for this CMS and causing issues.
Expected behaviour: The relation widgets should load quickly. (<3s) The infinite scroll causes issues with rate limiting seemingly. it would be easier to load all the items (or increase the per page count perhaps)
Applicable Versions:
- Netlify CMS version: https://unpkg.com/netlify-cms@2.10.55/dist/netlify-cms.js
- Git provider: GitHub
- OS: Windows 10
- Browser version Chrome Version 84.0.4147.89 (Official Build) (64-bit)
CMS configuration
backend:
name: git-gateway
branch: master
squash_merges: true
media_library:
name: cloudinary
config:
cloud_name: X
api_key: X
collections:
- name: announcements
label: Announcements
label_singular: "Announcement"
folder: "source/_announcements"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: 'Student Achievement Conferences' }
- { label: "Emergency", name: "is_emergency", widget: "boolean", default: false }
- { label: "Date", name: "date", widget: "date" }
- { label: "Subtitle", name: "subtitle", widget: "string", required: false, hint: 'Students released at 1.50pm (end of Period 4)' }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Tags", name: "tags", widget: "list", required: false }
- name: "news"
label: "News"
label_singular: "News"
folder: "source/_news"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
summary: "{{year}}-{{month}}-{{day}} | {{title}}"
view_filters:
- label: 'Posts published in 2020'
field: date
pattern: '2020'
fields:
- { label: "Title", name: "title", widget: "string" }
- label: "Feature Image"
name: "feature_image"
widget: "object"
required: false
fields:
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Image Description", name: "description", widget: "string", required: false }
- { label: "Image Alt Text", name: "alt", widget: "string", required: false }
- { label: "Image Credit", name: "credit", widget: "string", required: false }
- { label: "Short Intro", name: "short", widget: "text", required: false, hint: "Use this to override the default generated option which is the first 200 characters of the body" }
- { label: "Body", name: "body", widget: "markdown" }
- label: "News Author"
name: "news_author"
widget: "object"
required: false
fields:
- { label: "Date", name: "date", widget: "date", required: false }
- { label: "Author", name: "name", widget: "string", required: false }
- { label: "Publication", name: "publication", widget: "string", required: false }
- label: "Image Gallery"
name: "image_gallery"
widget: "list"
fields:
- { label: "Image Filename", name: "image", widget: "image" }
- { label: "Image Description", name: "description", widget: "string", required: false }
- { label: "Description", name: "description", widget: "hidden", required: false }
- { label: "Related Departments", name: faculties, required: false, multiple: true, widget: "relation", collection: "faculties", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Related Subjects", name: subject_areas, required: false, multiple: true, widget: "relation", collection: "subject_areas", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Related Extracurricular Areas", name: extracurricular_areas, required: false, multiple: true, widget: "relation", collection: "extracurricular_areas", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Related Extracurricular Activities", name: extracurricular_activities, required: false, multiple: true, widget: "relation", collection: "extracurricular_activities", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Show in News Sliders", name: "show_in_slider", widget: "boolean", default: true, required: false }
- { label: "Date", name: "date", widget: "date" }
- { label: "Image Filename", name: "image", widget: "hidden", required: false }
- { label: "Image Title", name: "image_title", widget: "hidden", required: false }
- { label: "Image Alt", name: "image_alt", widget: "hidden", required: false }
- { label: "Image credit", name: "image_credit", widget: "hidden", required: false, hint: "e.g. Andy McGechan" }
- name: "events"
label: "Events"
label_singular: "Event"
folder: "source/_events"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
summary: "{{year}}-{{month}}-{{day}} | {{title}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Short Intro", name: "short", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown" }
- label: "Image Gallery"
name: "image_gallery"
widget: "list"
fields:
- { label: "Image Filename", name: "image", widget: "image" }
- { label: "Image Description", name: "description", widget: "string", required: false }
- name: "newsletters"
label: "Newsletters"
label_singular: "Newsletter"
folder: "source/_newsletters"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
summary: "{{month}} {{year}} | {{title}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Filename", name: "file", widget: "file", allow_multiple: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "about_whs"
label: "About WHS Pages"
label_singular: "About WHS Page"
folder: "source/_about"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- label: "Image Filename"
name: "image"
widget: "image"
required: false
- { label: "Section Intro (shown on main page)", name: "intro", widget: "text", required: false }
- { label: "Intro Button Text (shown on main page)", name: "button_text", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "extends", name: "Extends", widget: "hidden", default: '_layouts.post' }
- { label: "Visible in nav", name: "visible", widget: "select", default: 'Yes', options: ["Yes", "No"], multiple: false }
- name: "board_members"
label: "Board Members"
label_singular: "Board Member"
folder: "source/_board_members"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Mr Joe Bloggs" }
- { label: "Position", name: "position", widget: "string", required: false }
- { label: "Category", label_singular: "Category", name: "category", widget: "select", multiple: false,
options: ["Board Chairperson", "Principal","Parent Representative", "Staff Representative", "Co-opted Member", "Also in Attendance"]
}
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- name: "curriculum"
label: "Curriculum Pages"
label_singular: "Curriculum Entry"
folder: "source/_curriculum"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "extends", name: "Extends", widget: "hidden", default: '_layouts.post' }
- { label: "Intro", name: "intro", widget: "text" }
- { label: "Body", name: "body", widget: "markdown" }
- name: "galleries"
label: "Galleries"
label_singular: "Gallery"
folder: "source/_galleries"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Faculty", name: faculty, required: false, widget: "relation", collection: "faculties", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- label: "Image Gallery"
name: "image_gallery"
widget: "list"
fields:
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Image Description", name: "description", widget: "string", required: false }
- { label: "Image Alt Text", name: "alt", widget: "string", required: false }
- { label: "Image Credit", name: "credit", widget: "string", required: false }
- name: "facilities"
label: "Facilities"
label_singular: "Facility"
folder: "source/_facilities"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Description", name: "description", widget: "text", hint: "SHORT search engine snippet text" }
- { label: "Body", name: "body", widget: "markdown" }
- label: "Image Gallery"
name: "image_gallery"
widget: "list"
fields:
- { label: "Image Filename", name: "image", widget: "image" }
- { label: "Image Description", name: "description", widget: "string" }
- { label: "Faculties", name: faculties, required: false, multiple: true, widget: "relation", collection: "faculties",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- name: "for_parents"
label: "For Parents Pages"
label_singular: "For Parents Page"
folder: "source/_for_parents"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Intro", name: "intro", widget: "text", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "Extends", name: "extends", widget: "hidden", default: "_layouts.post" }
- name: "international"
label: "International Pages"
label_singular: "International Page"
folder: "source/_international"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "Extends", name: "extends", widget: "hidden", default: "_layouts.post" }
- name: "news_and_events"
label: "News and Events Pages"
label_singular: "News and Events Page"
folder: "source/_news_and_events"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Extends", name: "extends", widget: "hidden", default: "_layouts.post" }
- name: "faculties"
label: "Departments"
label_singular: "Department"
folder: "source/_faculties"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Maori Title", name: "maori_title", widget: "string", required: false }
- { label: "Date", name: "date", widget: "date" }
- { label: "Is a Teaching Faculty", name: is_teaching_faculty, widget: boolean, default: true}
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Intro", name: "intro", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "Heads of Faculty", name: hofs, required: false, multiple: true, widget: "relation", collection: "staff",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Assistant Heads of Faculty", name: ahofs, required: false, multiple: true, widget: "relation", collection: "staff",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Vocational Pathways", name: "vocational_pathways", widget: "select", required: false, multiple: true,
options: [
{ label: "Service Industries", value: "service" },
{ label: "Creative Industries", value: "creative" },
{ label: "Social and Community Services", value: "social" },
{ label: "Primary Industries", value: "primary" },
{ label: "Construction and Infrastructure", value: "construction" },
{ label: "Manufacturing and Technology", value: "manufacturing" }
]
}
- { label: "Related Facilities", name: facilities, required: false, multiple: true, widget: "relation", collection: "facilities",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- name: "subject_areas"
label: "Subject Areas"
label_singular: "Subject Area"
folder: "source/_subject_areas"
create: true
slug: "{{slug}}"
summary: "{{title}} | {{faculty}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Maori Title", name: "maori_title", widget: "string", required: false }
- { label: "Date", name: "date", widget: "date" }
- { label: "Tags", name: "tags", widget: "list", required: false }
- { label: "Faculty", name: faculty, required: true, widget: "relation", collection: "faculties",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "courses"
label: "Courses"
label_singular: "Course"
folder: "source/_courses"
create: true
slug: "{{slug}}"
summary: "{{title}} - {{name}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Maori Title", name: "maori_title", widget: "string", required: false }
- { label: "Name", name: "name", widget: "string" }
- { label: "Code", name: "code", widget: "string" }
- { label: "Subject Area", name: "subject_area", required: true, widget: "relation", collection: "subject_areas",
searchFields: ["title"], valueField: "title", displayFields: ["title", "faculty"] }
- { label: "Date", name: "date", widget: "date" }
- { label: "Entry Requirements", name: "entry_requirements", widget: "string", required: false }
- { label: "Year Level", name: year, widget: select, options: ["9","10","11","12","13"] }
- { label: "Type", name: "type", widget: "select", options: ["Core","Compulsory", "Optional", "Semester Course"], default: "Optional" }
- { label: "Course Duration", name: course_duration, widget: select, options: ["One Term", "Half Year","Full Year", "5 Week Introduction Plus 20 Week Course If Selected"] }
- { label: "Course Level", name: course_level, widget: select, options: ["Year 9","Year 10","NCEA 1","NCEA 2", "NCEA 3", "NCEA 1 and 2","NCEA 2 and 3","NCEA 1,2 and 3","All Year Levels"] }
- { label: "Assessment Type", name: assessment_type, widget: select, options: ["Achievement Standard","Unit Standard","Achievement and Unit Standard","Achievement Standard and Scholdarship","Achievement Standard and Cambridge as Examination","Compulsory", "Optional"], required: false }
- { label: "Leads To", name: "leads_to", required: false, widget: "relation", multiple: true, collection: "courses",
searchFields: ["code","title"], valueField: "code", displayFields: ["code", "name"] }
- { label: "Available Standards", name: "standards", required: false, widget: "relation", multiple: true, collection: "assessments",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Notes", name: "notes", widget: "text", required: false }
- { label: "Credits", name: "credits", widget: "string", required: false }
- { label: "Course Contribution", name: "course_fees", widget: "string", required: false }
- { label: "UE Approved", name: "ue_approved", widget: "boolean", required: false, default: false }
- { label: "Invitation Only", name: "invitation_only", widget: "boolean", required: false, default: false }
- { label: "Endorsement", name: "endorsement", widget: "boolean", required: false, default: false }
- name: "assessments"
label: "NCEA Standards"
label_singular: "NCEA Standard"
folder: "source/_assessments"
create: true
summary: "{{title}} | {{description}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Courses", name: "categories", required: false, multiple: true, widget: "relation", collection: "courses", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Description", name: "description", widget: "text" }
- { label: "URL", name: "pdf", widget: "string" }
- { label: "Level", name: "level", widget: "select", options: ["1","2","3"], required: false }
- { label: "Credits", name: "credits", widget: "number" }
- { label: "Assessment", name: "assessment", widget: "select",options: ["Internal", "External"] }
- { label: "U.E. Lit Reading", name: "ue_lit_reading", widget: "boolean", required: false, default: false }
- { label: "U.E. Lit Writing", name: "ue_lit_writing", widget: "boolean", required: false, default: false }
- { label: "Vocational Pathways", name: "vocational_pathways", widget: "select", required: false, multiple: true,
options: [
{ label: "Service Industries", value: "service" },
{ label: "Creative Industries", value: "creative" },
{ label: "Social and Community Services", value: "social" },
{ label: "Primary Industries", value: "primary" },
{ label: "Construction and Infrastructure", value: "construction" },
{ label: "Manufacturing and Technology", value: "manufacturing" }
]
}
- name: "extracurricular_areas"
label: "Extracurricular Areas"
label_singular: "Extracurricular Area"
folder: "source/_extracurricular_areas"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Body", name: "body", widget: "markdown" }
- { label: "Feature Image", name: "image", widget: "image", required: false }
- { label: "Person in Charge", required: false, name: "person_in_charge", widget: "relation", collection: "staff",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- name: "extracurricular_activities"
label: "Extracurricular Activities"
label_singular: "Extracurricular Activity"
folder: "source/_extracurricular_activities"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "People", name: "people", widget: "list",
fields: [
{ name: "name", widget: "relation", collection: "staff",
searchFields: ["title"], valueField: "title", displayFields: ["title"] },
{ name: "role", widget: string, default: "Teacher in Charge", hint: "The users role for this activity. e.g. Teacher in Charge, Coach - NOT: HEAD OF FACULTY" }
]
}
- { label: "Terms", name: "terms", widget: "select", options: ["Term 1", "Term 2", "Term 3", "Term 4"], required: false, multiple: true}
- { label: "Uniform", name: "uniform", required: false, widget: "markdown" }
- { label: "Extra Curricular Area", name: "extracurricular_area", widget: "relation", collection: "extracurricular_areas",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Category", name: "category", widget: "string", required: false, hint: "an additional grouping that the activity may be grouped under. e.g. 'School Sports', 'Local Clubs', 'Dance' etc" }
- { label: "Cost", name: "cost", widget: "string", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Feature Image", name: "image", widget: "image", required: false }
- label: "Image Gallery"
name: "image_gallery"
widget: "list"
fields:
- { label: "Image Filename", name: "image", widget: "image" }
- { label: "Image Description", name: "description", widget: "string", required: false }
- label: "Content Blocks"
label_singular: "Content Block"
name: blocks
widget: list
types: [
{
label: "Hero", name: hero, widget: object,
fields: [
{ label: "Heading", name: heading, widget: string},
{ label: "Content", name: content, widget: markdown, buttons: ["bold", "italic", "link"], required: false }
]
},
{
label: "Rich Text Block", name: textBlock, widget: object,
fields: [
{ label: "Heading", name: heading, widget: string, required: false },
{ label: "Content", name: content, widget: markdown}
]
},
{
label: "Youtube Video", name: video, widget: object,
fields: [
{ label: "Heading", name: heading, widget: string, required: false },
{ label: "Video URL", name: url, widget: string} ,
{ label: "Content", name: content, widget: markdown, required: false }
]
},
{
label: "Facebook Video", name: videoFB, widget: object,
fields: [
{ label: "Heading", name: heading, widget: string, required: false },
{ label: "Video URL", name: url, widget: string} ,
{ label: "Content", name: content, widget: markdown, required: false }
]
}
]
- name: "achievers_lists"
label: "Achievers Lists"
label_singular: "Achievers List"
folder: "source/_achievers_lists"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Filename", name: "file", widget: "file", allow_multiple: false }
- name: "prizegiving_booklets"
label: "Prizegiving Booklets"
label_singular: "Prizegiving Booklet"
folder: "source/_prizegiving_booklets"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Filename", name: "file", widget: "file", allow_multiple: false }
- name: "testimonials"
label: "Testimonials"
label_singular: "Testimonial"
folder: "source/_testimonials"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Place", name: "place", widget: "string" }
- { label: "International", name: "international", widget: boolean}
- { label: "image", name: "image", widget: "image" }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "scholarships"
label: "Scholarships"
label_singular: "Scholarship"
folder: "source/_scholarships"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Eligible", name: "eligible", widget: "select",
options: [ "Current Students", "Ex-Students"] }
- { label: "Application URL", name: "url", widget: "string", required: false, hint: "A link to an online application form e.g. Google Form"}
- { label: "Application PDF", name: "file", widget: "file", required: false}
- { label: "Body", name: "body", widget: "markdown", required: true }
- name: "honours"
label: "Honours Board"
label_singular: "Honours Entry"
folder: "source/_honours"
create: true
slug: "{{slug}}"
summary: "{{title}} - {{person1_name}} | {{person2_name}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Dux X YYYY" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Award", name: "award", widget: "select",
options: [ "Dux Litterarum", "Dux Ludorum", "Dux Artium", "Maori Student Dux", "Heads of School"] }
- { label: "Person 1 Name", name: "person1_name", widget: string }
- { label: "Person 1 Image", name: "person1_image", widget: image, required: false }
- { label: "Person 2 Name", name: "person2_name", widget: string, required: false }
- { label: "Person 2 Image", name: "person2_image", widget: image, required: false }
- name: "policies"
label: "Policies"
label_singular: "Policy"
folder: "source/_policies"
create: false
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { name: "policyAreas", label: "Policy Areas", label_singular: "Policy Area", widget: "list",
fields: [
{
label: "Policy Area Name", name: "policyArea", widget: "select",
options: [
"1. Curriculum Delivery",
"2. Documentation and Self Review",
"3. Personnel",
"4. Finance and Property",
"5. Health and Safety",
"6. Administration"
]
},
{ label: "Policies", name: policies, widget: list,
fields: [
{ name: "policy", label: "Policy", widget: "string" },
{ name: document, label: "Document", widget: "file", allow_multiple: false }
]
}
]
}
- name: "school_leaders"
label: "School Leaders"
label_singular: "School Leader"
folder: "source/_school_leaders"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Head Boy and Girl, Deputy Head Boy and Girl, Cultural, Māori, E-Life" }
- { label: "Category", label_singular: "Category", name: "category", widget: "select", multiple: false,
options: ["Heads of School","Deputy Heads of School","Prefects","Heads of House"]
}
- { label: "Body", name: "body", widget: "string", required: true, hint: "e.g. Joe Bloggs and Jane Doe" }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- name: "prefects"
label: "Prefects"
label_singular: "Prefect"
folder: "source/_prefects"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Jack Donaldson and Emelye Brown" }
- { label: "Category", label_singular: "Category", name: "category", widget: "select", multiple: false,
options: ["Head Boy and Girl", "Deputy Head Boy and Girl", "Head of Academia","Head of Culture","Head of Community"," Head of E-Life", "Head of Social","Head of Sport", "Head of Maori", "Head of Pasifika", "Head of International", "Head of Awa House", "Head of Maunga House", "Head of Moana House", "Head of Whenua House" ]
}
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- name: "staff"
label: "Staff"
label_singular: "Staff Member"
folder: "source/_staff"
create: true
slug: "{{year}}-{{month}}-{{day}}_{{slug}}"
summary: "{{title}} - {{position}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Mr Joe Bloggs" }
- { label: "Position", name: "position", widget: "string", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Departments", multiple: true, name: departments, widget: "relation", collection: "faculties", searchFields: ["title"], valueField: "title", displayFields: ["title"] }
- { label: "Image Filename", name: "image", widget: "image", required: false }
- { label: "Positions", name: "positions", widget: "list", required: false, multiple: true,
fields: [
{ name: "title", label: "Title", widget: "string" },
{ label: "Department", name: department, widget: "relation", collection: "faculties",
searchFields: ["title"], valueField: "title", displayFields: ["title"] }
]
}
- { label: "Phone", name: "phone", widget: "string", required: false }
- { label: "Email", name: "email", widget: "string", required: false }
- name: "term_dates"
label: "Term Dates"
label_singular: "Term Date"
folder: "source/_term_dates"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string", hint: "Public Holidays should have title 'Public Holidays' included, otherwise use Term X" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Start Dates", name: "start_dates", widget: list,
fields: [
{ label: "Date", name: "date", widget: "date" },
{ label: "Body", name: "body", widget: "string" }
]
}
- { label: "End Dates", name: "end_dates", widget: list,
fields: [
{ label: "Date", name: "date", widget: "date", required: false },
{ label: "Body", name: "body", widget: "string" }
]
}
- name: "vacancies"
label: "Vacancies"
label_singular: "Vacancy"
folder: "source/_vacancies"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Email", name: "email", widget: "string", default: "principal@whs.ac.nz" }
- { label: "Body", name: "body", widget: "markdown" }
- name: "school_documents"
label: "School Documents"
label_singular: "School Document"
folder: "source/_school_documents"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Filename", name: "file", widget: "file", allow_multiple: false }
- name: "the_record"
label: "The Record"
folder: "source/_the_record"
create: true
slug: "{{slug}}"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Filename", name: "file", widget: "file", allow_multiple: false }
- name: "pages"
label: "Pages"
create: true
folder: "source/_pages"
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Date", name: "date", widget: "date" }
- { label: "Body", name: "body", widget: "markdown", required: false }
- { label: "Extends", name: "extends", widget: "hidden" }
- label: "Page Builder"
label_singular: "Content Block"
name: blocks
widget: list
types:
- label: "H2 Section"
name: h2section
widget: object
fields:
- { label: "Heading", name: heading, widget: string}
- { label: "Content", name: content, widget: markdown, buttons: ["bold", "italic", "link"], required: false }
- label: "Rich Text Block"
name: textBlock
widget: object
fields:
- { label: "Heading", name: heading, widget: string, required: false }
- { label: "Content", name: content, widget: markdown}
- label: "Video"
name: video
widget: object
fields:
- { label: "Heading", name: heading, widget: string, required: false }
- { label: "Video URL", name: url, widget: string}
- { label: "Content", name: content, widget: markdown, required: false }
- label: "Facebook"
name: facebook
widget: object
fields:
- { label: "Heading", name: heading, widget: string, required: false }
- { label: "Facebook URL", name: url, widget: string}
- label: "Term Dates"
name: termDates
widget: object
fields:
- { label: "Heading", name: heading, widget: string, default: "Term Dates" }
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 26 (26 by maintainers)
Thanks.
I have created a new users and invited them as a collaborator to this repository. I have generated an access token for that user and assigned it in the netlify git-gateway settings. I have tested some updates to ensure our content manager can still post updates.
Will advise if any further timeouts
Closing this as I don’t see what else can be done on the CMS side. Please comment if still relevant