function onload () { state.hasChanged = Array (); state.actualValues = Array (); for (var name in state.values) { state.actualValues[name] = state.values[name]; } // quickbar initialesieren cbInit(); updateQuickbar (); showMessages (state.messages); top.setStatus (state.statusbar.value); } function onresize () { if (obj = document.getElementById ("scroll")) { obj.className = "content_hidden"; obj.style.width = obj.parentNode.offsetWidth; obj.style.height = obj.parentNode.offsetHeight; obj.className = "content"; } } function focus () { new Form ().focus (); } function setValue (name, value, noHasChanged) { new Form ().set ("value["+name+"]", value); if (!noHasChanged) { hasChanged (name); } } function getValue (name) { return new Form ().get ("value["+name+"]"); } function hasChanged (name) { if (name == "files") { filename = getValue ("exportfile"); if (getValue ("files")) { filename = filename.replace (/.sql$/, ".tar"); } else { filename = filename.replace (/.tar$/, ".sql"); } setValue ("exportfile", filename); } value = getValue (name); state.actualValues[name] = value; if ((value == state.values[name]) == (state.hasChanged[name] == true)) { if (typeof state.values[name] == "undefined") { state.values[name] = ""; } state.hasChanged[name] = !state.hasChanged[name]; var changed = false; for (var i in state.hasChanged) { changed |= state.hasChanged[i]; } state.quickbar.disabledButtons.save = !changed; updateQuickbar (); } } var disableButtonsList = Array (); function updateQuickbar () { for (var name in disableButtonsList) { document.getElementById (name).setEnabled (true); } disableButtonsList = Array (); for (var name in state.quickbar.disabledButtons) { if (state.quickbar.disabledButtons[name]) { document.getElementById (name).setEnabled (false); disableButtonsList[name] = true; } } } function update () { updateQuickbar (); top.setStatus (state.statusbar.value); } function save (onCompletion) { var values = ""; for (var name in state.hasChanged) { // Alle zu speichernde Werte zusammen suchen if (state.hasChanged[name]) { values += "&value["+name+"]="+encodeURIComponent (getValue(name)); } } if (values) { state.hasChanged = Array (); top.setProgress (true); var path = window.location.pathname.replace (/(.*\/).*/, "$1"); // ist für Save beim direkten öffnen einer neuen Seite var request = new Ajax (path+"tpl_backup_action.php", "action=save&"+values); request.onCompletion = onCompletion ? onCompletion : function (response) { state.hasChanged = Array (); state.quickbar.disabledButtons.save = true; update (); focus (); } request.run (); return true; } else { return false; } } function doAction (action) { switch (action) { case 'import': if (!getValue ("importfile")) { alert (state.questions['noImportFile']); } else if (confirm (state.questions['importBackup'])) { // Datei in extra Fenster hochladen var target = "import_backup"; var win = window.open ("", target, "width=200, height=100, status=no, toolbar=no, location=no, scrollbars=no"); var node = win.document.createElement ("span"); node.innerHTML = "
Uploading backup ...
"; win.document.body.insertBefore (node, win.document.body.firstChild); var form = document.getElementById ("form"); form.action = "tpl_backup_action.php?action=import" form.target = target; form.submit (); } break; case 'export': var values = ""; for (var name in state.actualValues) { // Alle zu speichernde Werte zusammen suchen if (state.actualValues[name] && name != 'exportfile') { values += "&value["+name+"]="+encodeURIComponent (state.actualValues[name]); } } if (!values) { alert (state.questions['noExportFile']); } else { values += "&value[exportfile]="+encodeURIComponent (getValue('exportfile')); document.location.href = "tpl_backup_action.php?action=export&"+values; } break; } } function reload () { top.reload (true); } function help () { top.setProgress (true); var request = new Ajax ("tpl_backup_action.php", "action=message&text=help text"); request.onCompletion = function (response) { showMessages ({0:{type : "info", text : response}}); top.setProgress (false); } request.run (); }