X-Git-Url: https://scm.cri.minesparis.psl.eu/git/Plinn.git/blobdiff_plain/3e0a2c257d49fb162da9c70d2f70194036235166..959d888c17d1403d2eeecc19bc4b5e2c8d1debf6:/skins/ajax_scripts/generic_header_script.js diff --git a/skins/ajax_scripts/generic_header_script.js b/skins/ajax_scripts/generic_header_script.js deleted file mode 100755 index f8cdd09..0000000 --- a/skins/ajax_scripts/generic_header_script.js +++ /dev/null @@ -1,140 +0,0 @@ -// (c) Benoît PIN 2006-2007 -// http://plinn.org -// Licence GPL -// $Id: generic_header_script.js 1315 2008-07-29 15:36:15Z pin $ -// $URL: http://svn.cri.ensmp.fr/svn/Plinn/branches/CMF-2.1/skins/ajax_scripts/generic_header_script.js $ - - -function initHeaderScript() { - var toggleButton = document.getElementById("ToggleFormButton"); - if (!toggleButton) return; - var ob_url = absolute_url(); - var metadataInspector = new InspectorPalette(portal_url(), - document.getElementById("ToggleFormButton").childNodes[0], - document.getElementById("HeaderArea")); - - metadataInspector.onExpand = function(inspector) { - var onAfterPopulate = function() { - // init simple metadata form manager - var metadataForm = inspector.contentNode.getElementsByTagName('FORM')[0]; - var fm = new FormManager(metadataForm); - fm.onResponseLoad = function(){inspector.collapse();}; - - // init event handler to show full metadata form - var showFullMetadataForm = function(evt) { - disableDefault(evt); - disablePropagation(evt); - - var initFullMetadataForm = function () { - var metadataForm = inspector.contentNode.getElementsByTagName('FORM')[0]; - var fm = new FormManager(metadataForm); - fm.onResponseLoad = function(){inspector.collapse();}; - - addListener(document.getElementById('showSimpleMetadataForm'), - 'click', - function(evt){inspector.expand(); disableDefault(evt); disablePropagation(evt);}); - }; - var fi = new FragmentImporter(absolute_url(), initFullMetadataForm); - fi.useMacro('header_widgets', 'fullMetadataForm', 'HeaderArea'); - }; - addListener(document.getElementById('showFullMetadataForm'), 'click', showFullMetadataForm); - }; - var fi = new FragmentImporter(ob_url, onAfterPopulate); - fi.useMacro('header_widgets', 'titleAndDescForm', 'HeaderArea'); - }; - - metadataInspector.onCollapse = function(inspector) { - var fi = new FragmentImporter(ob_url); - fi.useMacro('header_widgets', 'viewTitleAndDesc', 'HeaderArea'); - }; -} - - -function MetadataDateManager(baseFieldName, defaultDate) { - var thisManager = this; - this.baseFieldName = baseFieldName; - this.defaultDate = defaultDate; - this._previousDate = new Date(); - - var calConfig = []; - // setup js calendar - calConfig["inputField"] = baseFieldName; // id of the input field - calConfig["ifFormat"] = "%Y %m %d %H %M"; // format of the input field - calConfig["date"] = function() { return thisManager.builDateFromInputs(); }; - calConfig["showsTime"] = true; // will display a time selector - calConfig["button"] = "show_" + baseFieldName + "_cal"; // trigger for the calendar (button ID) - calConfig["singleClick"] = false; // double-click mode - calConfig["showOthers"] = true; // show overlapping months - calConfig["weekNumbers"] = false; - calConfig["firstDay"] = 1; - calConfig["onSelect"] = thisManager.splitDate; - - Calendar.setup(calConfig); - - //init event listener on checkbox - var cb = document.getElementById(baseFieldName + "_cb"); - if (cb) { - addListener(cb, 'click', function(){thisManager.toggleDisplay();}); - if ( this.builDateFromInputs().valueOf() == this.defaultDate.valueOf() ) { - document.getElementById(baseFieldName + "_fields").style.display = "none"; - cb.checked = true; - } - } -} - -MetadataDateManager.prototype.builDateFromInputs = function() { - var baseFieldName = this.baseFieldName; - var year = document.getElementById(baseFieldName + "_year").value; - var month = document.getElementById(baseFieldName + "_month").value; - var day = document.getElementById(baseFieldName + "_day").value; - var hour = document.getElementById(baseFieldName + "_hour").value; - var minute = document.getElementById(baseFieldName + "_minute").value; - - if ( (year && month && day && hour && minute) != "" ) { - var dateStr = month + "/" + day + "/" + year + " " + hour + ":" + minute + ":00"; - return new Date(dateStr) ; - } - else - return new Date(); -}; - -MetadataDateManager.prototype.splitDate = function(calendar, date) { - var inputId = (typeof calendar == "string") ? this.baseFieldName : calendar.params['inputField'].id; - - var tokens; - if (typeof date == "object") { - tokens = new Array(5); - tokens[0] = String( date.getFullYear() ); - var month = date.getMonth() +1; - tokens[1] = (month <10) ? "0" + String(month) : String(month); - var day = date.getDate() - tokens[2] = (day < 10) ? "0" + String(day) : String(day); - var hours = date.getHours(); - tokens[3] = (hours < 10) ? "0" + String(hours) : String(hours); - var minutes = date.getMinutes(); - tokens[4] = (minutes < 10) ? "0" + String(minutes) : String(minutes); - } - else - tokens = date.split(" "); - - document.getElementById(inputId + "_year").value = tokens[0]; - document.getElementById(inputId + "_month").value = tokens[1]; - document.getElementById(inputId + "_day").value = tokens[2]; - document.getElementById(inputId + "_hour").value = tokens[3]; - document.getElementById(inputId + "_minute").value = tokens[4]; -}; - - -MetadataDateManager.prototype.toggleDisplay = function() { - var cb = document.getElementById(this.baseFieldName + '_cb'); - var fields = document.getElementById(this.baseFieldName + '_fields'); - if (cb.checked) { - fields.style.display = "none"; - this._previousDate = this.builDateFromInputs(); - this.splitDate('', this.defaultDate) - } - else { - this.splitDate('', this._previousDate); - fields.style.display = "block"; - } -}; \ No newline at end of file