function initPubDateButtons() { // check if form instantiation is to create new post or edit existing one var isCreateOp = {{ form.initial|yesno:"false,true" }}; var pubDateElem = document.querySelector('input[name="published_at"]'); if (pubDateElem.value === '') { // add 'set to today' functionality on publication date var setTodaySpan = document.getElementById('set-today'); var setTodayAnchor = document.createElement('a'); setTodayAnchor.innerText = 'set to today'; setTodayAnchor.href='javascript:'; setTodaySpan.appendChild(document.createTextNode(' — ')); setTodaySpan.appendChild(setTodayAnchor); setTodaySpan.addEventListener('click', function () { var isoDate = new Date().toISOString().substring(0,10); document.querySelector('input[name="published_at"]').value = isoDate; }); } else if (isCreateOp) { // add 'make draft / set to empty' functionality var setEmptySpan = document.getElementById('set-empty'); var setEmptyAnchor = document.createElement('a'); setEmptyAnchor.innerText = 'set as draft'; setEmptyAnchor.href='javascript:'; setEmptySpan.appendChild(document.createTextNode(' — ')); setEmptySpan.appendChild(setEmptyAnchor); setEmptySpan.addEventListener('click', function () { document.querySelector('input[name="published_at"]').value = ''; }); } } // init initPubDateButtons();