Page History
...
HTML |
---|
<script> function download_file(data, fileName) { var fileData = data; var byteChars = $.base64('decode', fileData); var ab = new ArrayBuffer(byteChars.length); var ia = new Uint8Array(ab); for (var i = 0; i < byteChars.length; i++) { ia[i] = byteChars.charCodeAt(i); } var blob = new Blob([ab], { type: 'application/pdf' }); if (window.navigator.msSaveOrOpenBlob) { // IE hack; see http://msdn.microsoft.com/en-us/library/ie/hh779016.aspx window.navigator.msSaveOrOpenBlob(blob, fileName); } else { var downloadUrl = URL.createObjectURL(blob); $( "#download") .attr({ 'download': fileName, 'href': downloadUrl }); $( "#download")[0].click(); window.history.back(); } }; function getQueryParameters() { var queryParams = {}; var query = window.location.search.substring(1); var pairs = query.split('&'); for (var i = 0; i < pairs.length; i++) { var pair = pairs[i].split('='); var key = decodeURIComponent(pair[0]); var value = decodeURIComponent(pair[1]); queryParams[key] = value; } return queryParams; } AJS.toInit(function updateMacroOnExistingPage() { var queryParams = getQueryParameters(); { console.log("AJS.toInit - queryParamsparam1: ", queryParams); 'new-value1', // Define the macro name var macroName = 'Mineaftaler'; param2: 'new-value2' }; // Define the macro name and parameters based on query parameters var macroName = 'Mineaftaler'; var macroParamsmacroParameters = { REST_HTML_URL: 'http://foedus01.nsi.netic.dk:8080/NSI_Aftaler-1.1.1-SNAPSHOT/rest/html', REST_DOWNLOAD_URL: 'http://foedus01.nsi.netic.dk:8080/NSI_Aftaler-1.1.1-SNAPSHOT/rest/base64encodefilebytes', include_user_info: true }; // Generate the updated macro markup var macroMarkupupdatedMacroMarkup = '{' + macroName + ':'; for (var key in macroParamsmacroParameters) { if (macroParamsmacroParameters.hasOwnProperty(key)) { macroMarkupupdatedMacroMarkup += key + '=' + macroParamsmacroParameters[key] + '|'; } } // Remove the trailing '|' character macroMarkupupdatedMacroMarkup = macroMarkupupdatedMacroMarkup.slice(0, -1); macroMarkupupdatedMacroMarkup += '}'; }); function insertMacroIntoExistingPage() { // Page varID queryParamsof =the { existing Confluence page var pageId param1:= 'value133594461', ; // Replace with the actual param2: 'value2' };Page ID // DefineMake thean macroAJAX namerequest andto parametersretrieve basedthe oncurrent querypage parameterscontent var macroName = 'YourMacroName';AJS.$.ajax({ var macroParameters = { REST_HTML_URL url: 'http://foedus01.nsi.netic.dk:8080/NSI_Aftaler-1.1.1-SNAPSHOT/rest/html', REST_DOWNLOAD_URL: 'http://foedus01.nsi.netic.dk:8080/NSI_Aftaler-1.1.1-SNAPSHOT/rest/base64encodefilebytes', include_user_info: true }; // Generate the macro markup var macroMarkup = '{' + macroName + ':'; for (var key in macroParameters) { rest/api/content/' + pageId + '?expand=body.storage', type: 'GET', success: function(data) { if (macroParameters.hasOwnProperty(key)) { // Get the current page content macroMarkup += key + '=' + macroParameters[key] + '|'var currentContent = data.body.storage.value; } } // Remove the trailing '|' character // macroMarkupReplace = macroMarkup.slice(0, -1); macroMarkup += '}'; the old macro markup with the updated macro markup // Page ID of the existing Confluence page var pageIdupdatedContent = '33594461'; // Replace with the actual Page ID currentContent.replace(/(\{YourMacroName:[^\}]+\})/g, updatedMacroMarkup); // Create a JSON payload for the REST API request to update the page var payload = { version: { number: 10000 data.version.number + 1 // Increment thisthe version number if you want to update the page content }, type: 'page', titlebody: 'Mine aftaler', // Specify the page title { body: { storage: { storage: { value: macroMarkupupdatedContent, representation: 'storage' } } }; // Make an AJAX request to update the page content AJS.$.ajax({ url: '/rest/api/content/' + pageId, type: 'PUT', contentType: 'application/json', data: JSON.stringify(payload), success: function(data) { console.log('Macro inserted intoon the page updated successfully.'); }, error: function(error) { console.error('Error insertingupdating macro intoon the page:', error); } }); }, error: function(error) { console.error('Error retrieving page content:', error); } }); } AJS.toInit(function() { insertMacroIntoExistingPageupdateMacroOnExistingPage(); }); </script> |
Warning |
---|
Det er desværre ikke muligt at godkende aftaler i øjeblikket. Der foretages en opgradering af systemet. |
...