{"id":4718,"date":"2020-05-05T09:56:53","date_gmt":"2020-05-05T07:56:53","guid":{"rendered":"https:\/\/studios.aalto.fi\/?page_id=4718"},"modified":"2025-08-05T12:45:02","modified_gmt":"2025-08-05T09:45:02","slug":"open-application","status":"publish","type":"page","link":"https:\/\/studios.aalto.fi\/sv\/open-application\/","title":{"rendered":"Open application for freelance work"},"content":{"rendered":"\n<div class=\"wp-block-columns as-default-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column as-default-columns-main-content is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<div id=\"processMessage\"><\/div>\n\n<p><strong>We are always on the lookout for AV and VR talent for projects, events, workshops and courses.<\/strong> If you&apos;re a professional in sound, videography, editing, animation, VR\/XR or any other media related field, we would like to add you to our contact list for freelance work.<\/p>\n\n<p>Similarly, if you&apos;re looking to perform your civilian service duty, or have an upcoming trainee period coming up in your studies, we may have openings for these type of positions, too.<\/p>\n\n<form id=\"form\" action=\"https:\/\/studios.aalto.fi\/sidetrack\/av-recruit.php\" method=\"post\" enctype=\"multipart\/form-data\">\n\n<h2><span class=\"ez-toc-section\" id=\"Tell_us_about_your_experience\"><\/span>Tell us about your experience<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>What kinds of settings have you previously worked in?<\/p>\n<p class=\"inputParagraph\">\n<label>\n<input type=\"checkbox\" name=\"Experience fields[]\" value=\"AV productions\"> AV productions\n<\/label>\n<\/p>\n<p class=\"inputParagraph\">\n<label>\n<input type=\"checkbox\" name=\"Experience fields[]\" value=\"Live streaming\"> Live streaming\n<\/label>\n<\/p>\n<p class=\"inputParagraph\">\n<label>\n<input type=\"checkbox\" name=\"Experience fields[]\" value=\"Extended reality production\"> Extended reality production\n<\/label>\n<\/p>\n<p class=\"inputParagraph\">\n<label>\n<input type=\"checkbox\" name=\"Experience fields[]\" value=\"Technical support\"> Technical support\n<\/label>\n<\/p>\n<p class=\"inputParagraph\">\n<label>\n<input type=\"checkbox\" name=\"Experience fields[]\" value=\"Courses and workshops\"> Courses and workshops\n<\/label>\n<\/p>\n\n<h2 class=\"mandatoryField\"><span class=\"ez-toc-section\" id=\"Experience_in_years\"><\/span>Experience in years<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"radio\" name=\"Experience in years[]\" value=\"Less than a year\"> Less than a year<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"radio\" name=\"Experience in years[]\" value=\"1-3 years\"> 1-3 years<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"radio\" name=\"Experience in years[]\" value=\"More than 3\"> More than 3<\/label><\/p>\n\n<br>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\" name=\"Experience level[]\" value=\"I am a student\"> I am a student<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\" name=\"Experience level[]\" value=\"I am a professional\"> I am a professional<\/label><\/p>\n\n<h2><span class=\"ez-toc-section\" id=\"What_positions_are_you_interested_in\"><\/span>What positions are you interested in?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Production Coordinator\"> Production Coordinator<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Director\"> Director<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Videographer\"> Videographer<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Camera operator\"> Camera operator<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Light technician for AV productions\"> Light technician for AV productions<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Light technician for events\"> Light technician for events<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\" Sound recordist for AV productions\"> Sound recordist for AV productions<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\" Sound technician for events\"> Sound technician for events<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Set designer\"> Set designer<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Editor\"> Editor<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Animator\"> Animator<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Graphic Designer\"> Graphic Designer<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Middleware Specialist\"> Unity\/Unreal Specialist<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"VFX Specialist\"> VFX Specialist<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"3D Modeler\"> 3D Modeler<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Costume Designer\"> Costume Designer<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Make-up Artist\"> Make-up Artist<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Content Developer for educational productions\"> Content Developer for educational productions<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Photographer\"> Photographer<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"XR Specialist\"> XR Specialist<br><\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Instructing and teaching\"> Instructing and teaching<br><\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\"$content name=\"Position interested in[]\" value=\"Other\"> Other (specify)<\/label><br><label><input type=\"text\" name=\"Details for other position\" class=\"inset\"><\/label><\/p>\n\n<h4><span class=\"ez-toc-section\" id=\"Civilian_service_positions\"><\/span>Civilian service positions<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>From time to time, we have openings for short term work suitable for performing a mandatory non-military service period.<\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\" name=\"Civilian service and trainee type[]\" value=\"Equipment lending service Takeout\"> Equipment lending service Takeout<\/label><\/p>\n\n<p class=\"inputParagraph\"><label>\n<input type=\"checkbox\" name=\"Civilian service and trainee type[]\" value=\"AV-productions (videography, editing)\"> AV-productions (videography, editing)<\/label><\/p>\n\n<p><label>When would this need to take place?<br><input name=\"Suitable time\" type=\"text\"><\/label><\/p>\n\n<h2><span class=\"ez-toc-section\" id=\"Personal_tools_at_hand\"><\/span>Personal tools at hand<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p>If you have your own equipment or software in use, you can give us spesifics here<\/p>\n\n<textarea name=\"Personal tools\"><\/textarea>\n\n<h2><span class=\"ez-toc-section\" id=\"CV_and_references\"><\/span>CV and references<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p>Send us up to 5 files showing your CV, portfolio or references<\/p>\n\n<p class=\"inputParagraph attachment\">\n<label><input type=\"text\" name=\"File description[]\" placeholder=\"Describe this file\u2026\"><br>\n<input type=\"file\" name=\"attachmentfile[]\" value=\"\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph attachment hidden\">\n<label><input type=\"text\" name=\"File description[]\" placeholder=\"Describe this file\u2026\"><br>\n<input type=\"file\" name=\"attachmentfile[]\" value=\"\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph attachment hidden\">\n<label><input type=\"text\" name=\"File description[]\" placeholder=\"Describe this file\u2026\"><br>\n<input type=\"file\" name=\"attachmentfile[]\" value=\"\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph attachment hidden\">\n<label><input type=\"text\" name=\"File description[]\" placeholder=\"Describe this file\u2026\"><br>\n<input type=\"file\" name=\"attachmentfile[]\" value=\"\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph attachment hidden\">\n<label><input type=\"text\" name=\"File description[]\" placeholder=\"Describe this file\u2026\"><br>\n<input type=\"file\" name=\"attachmentfile[]\" value=\"\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph revealer\" data-kind=\"attachment\">Add one more file<\/p>\n\n<h2><span class=\"ez-toc-section\" id=\"Links_for_us_to_check_out\"><\/span>Links for us to check out<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Such as your personal site, feeds and channels in online services, or mentions on other sites<\/p>\n\n<p class=\"inputParagraph link\">\n<label><input type=\"text\" name=\"Link description[]\" placeholder=\"Describe this link\u2026\"><br>\n<input type=\"url\" name=\"Link[]\" placeholder=\"https:\/\/your.uri.here\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph link hidden\">\n<label><input type=\"text\" name=\"Link description[]\" placeholder=\"Describe this link\u2026\"><br>\n<input type=\"url\" name=\"Link[]\" placeholder=\"https:\/\/your.uri.here\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph link hidden\">\n<label><input type=\"text\" name=\"Link description[]\" placeholder=\"Describe this link\u2026\"><br>\n<input type=\"url\" name=\"Link[]\" placeholder=\"https:\/\/your.uri.here\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph link hidden\">\n<label><input type=\"text\" name=\"Link description[]\" placeholder=\"Describe this link\u2026\"><br>\n<input type=\"url\" name=\"Link[]\" placeholder=\"https:\/\/your.uri.here\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph link hidden\">\n<label><input type=\"text\" name=\"Link description[]\" placeholder=\"Describe this link\u2026\"><br>\n<input type=\"url\" name=\"Link[]\" placeholder=\"https:\/\/your.uri.here\"><\/label>\n<\/p>\n\n<p class=\"inputParagraph revealer\" data-kind=\"link\"\">Add one more link<\/p>\n\n\n<h2><span class=\"ez-toc-section\" id=\"Contact_information\"><\/span>Contact information<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p><label data-required=true>Name<br><input name=\"Name\" type=\"text\"><\/label><\/p>\n\n<p><label>Company<br><input name=\"Company\" type=\"text\"><\/label><\/p>\n\n<p><label>Phone<br><input name=\"Phone\" type=\"tel\"><\/label><\/p>\n\n<p><label data-required=true>Email<br><input name=\"Email\" type=\"email\"><\/label><\/p>\n\n<p><label>Address<br><input name=\"Address\" type=\"text\"><\/label><\/p>\n\n<h2><span class=\"ez-toc-section\" id=\"Privacy_overview\"><\/span>Privacy overview<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n<p class=\"inputParagraph\" data-required=\"true\"><label>\n<input type=\"checkbox\" name=\"Consent\" value=\"Consent\"><span> I consent to having the data I submit being stored and used by Aalto Studios for contacting me on job opportunities.<\/span><\/label><\/p>\n<p>This data is stored for and used by only Aalto Studios on Aalto University servers for this explicit purpose and is not shared with other parties. We <a href=\"http:\/\/studios.aalto.fi\/privacy-policy\/\" target=\"_blank\" rel=\"noopener\">value your privacy<\/a> and will keep this data private to our best ability.<\/p>\n<p>To review or remove this data, contact us at <a href=\"mailto:studios@aalto.fi\">studios@aalto.fi<\/a><\/p>\n\n<p><\/p>\n<p><input id=\"submitButton\" type=\"submit\" value=\"Submit application\" disabled><\/p>\n<\/form>\n<\/div>\n\n\n\n<div class=\"wp-block-column as-default-columns-sidebar is-layout-flow wp-block-column-is-layout-flow\" style=\"padding-top:0;padding-right:0;padding-bottom:0;padding-left:0;flex-basis:33.33%\">\n<div class=\"wp-block-group aalto-studios-card-empty has-small-font-size has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h5 class=\"wp-block-heading\">What is Aalto Studios?<\/h5>\n\n\n\n<p>Aalto Studios is the centre of media at Aalto University, an international science and art community. <\/p>\n\n\n\n<p>We provide media production resources and expertise for all members and close affiliates. Browse through this site to see who we are and what we do.<\/p>\n\n\n\n<p>Starting 2025, our headquarters are in the Marsio building in Otaniemi, Espoo, Finland. We also have operations at Otakaari 5L and Otakaari 7, all on the same campus.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group aalto-studios-card-empty has-small-font-size has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h5 class=\"wp-block-heading\">Directions to Marsio<\/h5>\n\n\n\n<p class=\"has-small-font-size\">Find your way to Otakaari 2A on<\/p>\n\n\n\n<p style=\"font-size:0.85rem\"><a href=\"https:\/\/www.openstreetmap.org\/?mlat=60.18631&amp;mlon=24.82633#map=19\/60.18631\/24.82633&amp;layers=N\" data-type=\"link\" data-id=\"https:\/\/www.openstreetmap.org\/?mlat=60.18631&amp;mlon=24.82633#map=19\/60.18631\/24.82633&amp;layers=N\" target=\"_blank\" rel=\"noreferrer noopener\">OpenStreetMap<\/a> | <a href=\"https:\/\/maps.apple.com\/?address=Otakaari%201,%2002150%20Espoo,%20Finland&amp;ll=60.186218,24.827189&amp;q=Dropped%20Pin\" data-type=\"link\" data-id=\"https:\/\/maps.apple.com\/?address=Otakaari%201,%2002150%20Espoo,%20Finland&amp;ll=60.186218,24.827189&amp;q=Dropped%20Pin\" target=\"_blank\" rel=\"noreferrer noopener\">Apple Maps<\/a> | <a href=\"https:\/\/www.google.com\/maps\/dir\/\/60.1863302,24.8260858\/@60.1862492,24.8247776,18z\/data=!4m2!4m1!3e2?entry=ttu\" data-type=\"link\" data-id=\"https:\/\/www.google.com\/maps\/dir\/\/60.1863302,24.8260858\/@60.1862492,24.8247776,18z\/data=!4m2!4m1!3e2?entry=ttu\" target=\"_blank\" rel=\"noreferrer noopener\">Google Maps<\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<style>\n\np\n{\n\tmargin-bottom: 0.5rem !important;\n}\n\np.inputParagraph\n{\n\tmargin: 0 0 0.5rem 0 !important;\n}\n\np.attachment,\np.link\n{\n\tmargin-bottom: 1rem !important;\n}\n\np.inputParagraph.hidden\n{\n\tdisplay: none;\n}\n\np.revealer\n{\n\tcursor: pointer;\n}\n\np.revealer::before\n{\n\tdisplay: inline-block;\n\ttext-align: center;\n\tline-height: 0.95rem;\n\tfont-size: 1rem;\n\tfont-weight: 700;\n\tcontent: \"+ \";\n\tcolor: #fff;\n\tbackground: rgba(0,112,64,0.5);\n\tborder-radius: 50%;\n\twidth: 1rem;\n\theight: 1rem;\n\tmargin-right: 0.25rem;\n}\n\n.needsAttention\n{\n\tborder-color: #f90 !important;\n}\n\nspan.needsAttention\n{\n\tcolor: #f90 !important;\n}\n\n[data-required]::after\n{\n\tcontent: \" *\";\n\tfont-size: 0.75rem;\n\tvertical-align: bottom;\n}\n\ninput[type=file]\n{\n\tfont-size: 0.7rem;\n\tmargin-top: 0.5rem;\n\tbackground: none;\n}\n\ninput[type=text].inset\n{\n}\n\n\n\n\n.needsAttention\n{\n\tborder-color: #f90 !important;\n}\n\nspan.needsAttention\n{\n\tcolor: #f90 !important;\n}\n\n[data-required]::after\n{\n\tcontent: \" *\";\n\tfont-size: 1.8rem;\n\tvertical-align: middle;\n}\n\n#form input[type=text],\n#form input[type=tel],\n#form input[type=email],\n#form input[type=url],\n#form textarea,\n#form select,\n#form button,\n#form ::file-selector-button\n{\n\ttext-align: initial;\n\ttext-indent: initial;\n\ttext-shadow: initial;\n\ttext-transform: initial;\n\tword-spacing: initial;\n\tletter-spacing: initial;\n    font-size: 0.9rem;\n    font-weight: 300;\n}\n\n#form input:read-write, textarea:read-write\n{\n\t-moz-user-modify: read-write !important;\n}\n\n#form input[type=text],\n#form input[type=tel],\n#form input[type=email],\n#form input[type=url],\n#form textarea\n{\n\tborder: 1px solid var(--aalto-studios-color-low-contrast);\n\tbackground-color: var(--aalto-studios-color-shelf);\n\tmargin-top: 6px !important;\n\tmin-width: 240px;\n\twidth: calc(100% - 3rem);\n\t-webkit-appearance: none;\n\tpadding: 0 0.75rem !important;\n\tmin-height: 44px !important;\n\tborder-radius: 8px !important;\n\tcolor: var(--wp--preset--color--contrast);\n}\n\n#form textarea\n{\n\tpadding: 0.75rem !important;\n\tmin-height: 96px !important;\n}\n\n#form input[type=file]\n{\n\tfont-size: 0.8rem;\n\tmargin-top: 0.5rem;\n\tbackground: none;\n}\n\n#form input[type=text].inset\n{\n}\n\n#form input[type=\"checkbox\"]\n{\n  vertical-align: middle;\n}\n\n#form label\n{\n\tfont-weight: 300;\n}\n\n#form label + em\n{\n    display: block;\n\tfont-style: normal;\n\tfont-size: 0.80rem;\n\tcolor: var(--secondaryTextColor);\n}\n\n#form .wp-element-button\n{\n  background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple);\n  color: #fff !important;\n  min-width: 16rem;\n  transition: 0.5s background linear;\n}\n\n#form .wp-element-button:disabled\n{\n  background: rgb(128,128,128) !important;\n  transition: 0.5s background linear;\n}\n\n.consentParagraph\n{\n    font-size: 0.9rem;\n}\n\n#processMessage\n{\n\tdisplay: none;\n}\n\n#processMessage.visible\n{\n\tdisplay: block;\n}\n\n.success\n{\n\tborder-radius: var(--borderRadius);\n\tmargin: 0.1rem 0 0 0 !important;\n\tpadding: 0.2rem 1rem !important;\n\tborder: 2px solid rgba(0,255,0,0.5);\n\tbackground: rgba(0,255,0,0.1);\n}\n\n.error\n{\n\tborder-radius: var(--borderRadius);\n\tmargin: 0.1rem 0 0 0 !important;\n\tpadding: 0.2rem 0.5rem !important;\n\tborder: 2px solid rgba(255,0,0,0.5);\n\tbackground: rgba(255,0,0,0.1);\n}\n\n#processMessage h3\n{\n\tmargin-top: 1rem !important;\n}\n\n#submitButton\n{\n\tbackground: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple);\n\tcolor: #fff !important;\n\tmin-width: 16rem;\n\ttransition: 0.5s background linear;\n\tborder-radius: .33rem;\n\tborder-color: var(--wp--preset--color--contrast);\n\tborder-width: 0;\n\tfont-family: inherit;\n\tfont-size: 1rem;\n\tfont-style: normal;\n\tfont-weight: 500;\n\tline-height: inherit;\n\tpadding-top: 0.6rem;\n\tpadding-right: 1rem;\n\tpadding-bottom: 0.6rem;\n\tpadding-left: 1rem;\n\ttext-decoration: none;\n}\n\n#submitButton:disabled\n{\n\tbackground: rgb(128,128,128);\n\topacity: 0.66;\n}\n\n\n\n<\/style>\n\n\n\n<script>\ndocument.addEventListener( 'DOMContentLoaded', function()\n{\n    let inputForm = document.getElementById( 'form' )\n    let submitButton = document.getElementById( 'submitButton' )\n    let firstRun = true \/\/ Track first execution of timer\n\n    \/\/ Disable submit button on page load\n    submitButton.disabled = true\n\n    \/\/ Enable submit button after 6 seconds and modify form action on first run\n    setTimeout( () => \n    {\n        submitButton.disabled = false\n        \n        if ( firstRun )\n        {\n            let formAction = inputForm.getAttribute( \"action\" )\n            if ( formAction.includes( \"sidetrack\" ) )\n            {\n                let newAction = formAction.replace( \"sidetrack\", \"process\" )\n                inputForm.setAttribute( \"action\", newAction )\n            }\n        }\n    }, 6000 )\n\n    inputForm.addEventListener( 'click', function ( event )\n    {\n        if ( event.target.matches( '.revealer' ) )\n        {\n            let kind = event.target.getAttribute( 'data-kind' )\n            let hiddenParagraphs = document.querySelectorAll( `p.hidden.${kind}` )\n\n            if ( hiddenParagraphs.length > 0 )\n            {\n                hiddenParagraphs[0].classList.remove( 'hidden' )\n            }\n\n            if ( document.querySelectorAll( `p.hidden.${kind}` ).length === 0 )\n            {\n                event.target.remove()\n            }\n        }\n    })\n\n    document.querySelectorAll( 'input:checked' ).forEach( input => input.checked = false )\n\n    inputForm.addEventListener( \"submit\", function ( event )\n    {\n        console.log( 'form submit' )\n        event.preventDefault()\n\n        let preFlight = true\n\n        document.querySelectorAll( '[data-required=true] input' ).forEach( input => \n        {\n            input.classList.remove( 'needsAttention' )\n        })\n\n        document.querySelectorAll( '[data-required=true]' ).forEach( requiredField => \n        {\n            let input = requiredField.querySelector( 'input' )\n            if ( !input || !input.value )\n            {\n                input.classList.add( 'needsAttention' )\n                preFlight = false\n            }\n        })\n\n        let consentCheckbox = document.querySelector( 'input[name=\"Consent\"]' )\n        \n        if ( !consentCheckbox || !consentCheckbox.checked ) \n        {\n            alert( 'Consent is required' )\n            preFlight = false\n            \n            if ( consentCheckbox )\n            {\n                consentCheckbox.nextElementSibling?.classList.add( 'needsAttention' )\n            }\n        }\n\n        if ( !preFlight )\n        {\n            alert( 'Please add the required information' )\n            return\n        }\n\n        let formData = new FormData( inputForm )\n        let fileInputs = document.querySelectorAll( \"input[type='file']\" )\n\n        fileInputs.forEach( input => \n        {\n            Array.from( input.files ).forEach( file => \n            {\n                formData.append( 'file', file )\n            })\n        })\n\n        submitButton.value = \"Sending, please wait\u2026\"\n        submitButton.disabled = true \/\/ Disable button after submit\n\n        \/\/ Use form action as the fetch URL (since we modified it earlier)\n        let submitUrl = inputForm.getAttribute( \"action\" )\n\n        fetch( submitUrl, {\n            method: \"POST\",\n            body: formData,\n            cache: \"no-cache\"\n        })\n        .then( response => response.text() )\n        .then( message => \n        {\n\t\t\t\t\t\tlet messageArea = document.getElementById( 'processMessage' )\n           \tmessageArea.innerHTML = message\n\t\t\t\t\t\tmessageArea.classList.add( 'visible' )\n\n            window.scrollTo({ top: document.getElementById( \"processMessage\" ).offsetTop - 180, behavior: 'smooth' })\n            submitButton.value = \"Submit new application\"\n\n            \/\/ Re-enable submit button after 6 seconds\n            setTimeout( () => submitButton.disabled = false, 6000 )\n        })\n        .catch( error => \n        {\n            console.error( \"Error submitting form:\", error )\n            submitButton.disabled = false \/\/ Re-enable submit immediately if an error occurs\n\t\t\t\t\t\tsubmitButton.value = \"Submit application again\"\n        })\n    })\n})\n<\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are always on the lookout for AV and VR talent for projects, events, workshops and courses. If you&apos;re a professional in sound, videography, editing, animation, VR\/XR or any other media related field, we would like to add you to our contact list for freelance work. Similarly, if you&apos;re looking to perform your civilian service [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1665,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"tags":[],"facilitycategories":[],"productcategories":[],"class_list":["post-4718","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"mb":[],"mfb_rest_fields":["title"],"_links":{"self":[{"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/pages\/4718","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/comments?post=4718"}],"version-history":[{"count":5,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/pages\/4718\/revisions"}],"predecessor-version":[{"id":16292,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/pages\/4718\/revisions\/16292"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/media\/1665"}],"wp:attachment":[{"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/media?parent=4718"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/tags?post=4718"},{"taxonomy":"facilitycategories","embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/facilitycategories?post=4718"},{"taxonomy":"productcategories","embeddable":true,"href":"https:\/\/studios.aalto.fi\/sv\/wp-json\/wp\/v2\/productcategories?post=4718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}