Daftar Juara Indonesia Masters dari Masa ke Masa, Indonesia Unggul dari China (2025)

Baca berita tanpa iklan. Gabung Kompas.com+

  • Kompas.com
  • Tren

Kompas.com - 22/01/2025, 19:30 WIB

Muhammad Zaenuddin

Penulis

Daftar Juara Indonesia Masters dari Masa ke Masa, Indonesia Unggul dari China (1)

Lihat Foto

Pebulu tangkis ganda putra Indonesia Leo Rolly Carnando (kiri) dan Daniel Marthin (kanan) berfoto dengan piala dan medali mereka usai mengalahkan ganda putra Denmark Kim Astrup dan Anders Skaarup Rasmussen pada pertandingan babak final turnamen Daihatsu Indonesia Masters 2024 di Istora Senayan, Gelora Bung Karno (GBK), Jakarta, Minggu (28/1/2024). Leo dan Daniel meraih juara pertama turnamen itu setelah menang dengan rubber gim, 21-12, 20-22, 21-11. (ANTARA/ADITYA PRADANA PUTRA)

KOMPAS.com - Daihatsu Indonesia Masters 2025 resmi digelar sejak Senin (21/1/2025) kemarin di Istora Senayan, Jakarta.

Tercatat, lebih dari 200 atlet dari 21 negara meramaikan turnamen BWF World Tour Super 500 ini hingga 26 Januari 2025 mendatang.

Dikutip dari laman Persatuan Bulu Tangkis Seluruh Indonesia (PBSI), Indonesia Masters adalah turnamen bulu tangkis dengan label World Tour Super 500.

Baca juga: Daftar Harga Tiket Indonesia Masters 2025 dan Cara Belinya

Ajang bulu tangkis ini digelar di Tanah Air dengan level di bawah turnamen Indonesia Terbuka atau Indonesia Open.

Artikel Kompas.id

Daftar Juara Indonesia Masters dari Masa ke Masa, Indonesia Unggul dari China (5)

`; document.querySelector('.kompasidRec').innerHTML = htmlString; } else { document.querySelector(".kompasidRec").remove(); } } else { document.querySelector(".kompasidRec").remove(); } }});xhr.open("GET", endpoint);xhr.send();

Indonesia Masters sebelumnya lebih dikenal sebagai Indonesia Terbuka Grand Prix Gold yang pertama kali diselenggarakan tahun 2010 di Samarinda, Kalimantan Timur.

Seiring dengan perubahan level turnamen yang dilakukan BWF, sejak tahun 2018, turnamen Indonesia Terbuka Grand Prix Gold ini berganti menjadi turnamen Indonesia Masters.

Baca juga: Jadwal Lengkap dan Link Streaming Indonesia Masters 2025 Mulai Hari Ini

Daftar juara Indonesia Masters

Daftar Juara Indonesia Masters dari Masa ke Masa, Indonesia Unggul dari China (6)Dok. PBSI Zheng Si Wei/Huang Ya Qiong pemain bulutangkis China nomor ganda campuran saat berlaga pada final turnamen bulu tangkis Indonesia Masters 2024 di Istora Senayan, pada Minggu, 28 Januari 2024. (Photo by: Humas PP PBSI)

Berikut adalah daftar lengkap juara Indonesia Masters dari masa ke masa sejak pertama kali digelar pada 2010:

Tunggal Putra

  • 2010: Taufik Hidayat, Indonesia
  • 2011: Dionysius Hayom Rumbaka, Indonesia
  • 2012: Sony Dwi Kuncoro, Indonesia
  • 2013: Simon Santoso, Indonesia
  • 2014: Prannoy Kumar, India
  • 2015: Tommy Sugiarto, Indonesia
  • 2016: Shi Yuqi, China
  • 2017: Ditiadakan
  • 2018: Anthony Sinisuka Ginting, Indonesia
  • 2019: Anders Antonsen, Denmark
  • 2020: Anthony Sinisuka Ginting, Indonesia
  • 2021: Kento Momota, Jepang
  • 2022: Viktor Axelsen, Denmark
  • 2023: Jonatan Christie, Indonesia
  • 2023: Anders Antonsen, Denmark.

Baca juga: Profil Christian Adinata, Tunggal Putra Bulu Tangkis Indonesia yang Alami Cedera di Malaysia Master 2023

Tunggal Putri

  • 2010: Ratchanok Intanon, Thailand
  • 2011: Chen Xiaojia, China
  • 2012: Han Li, China
  • 2013: Suo Di, China
  • 2014: Adriyanti Firdasari, Indonesia
  • 2015: He Bingjiao, China
  • 2016: Busanan Ongbamrungphan, Thailand
  • 2017: Ditiadakan
  • 2018: Tai- Zu-ying, Taiwan
  • 2019: Saina Nehwal, India
  • 2020: Ratchanok Intanon, Thailand
  • 2021: An Seyoung, Korea Selatan
  • 2022: Chen Yu Fei, China
  • 2023: An Se-young, Korea Selatan
  • 2024: Wang Zhi Yi, China.

Baca juga: Profil Iga Swiatek, Petenis 19 Tahun yang Jadi Juara Tunggal Putri French Open 2020

Ganda Putra

  • 2010: Mohammad Ahsan/Bona Septano, Indonesia
  • 2011: Mohammad Ahsan/Bona Septano, Indonesia
  • 2012: Kim-Gi-jung/Kim- Sa-rang, Korea Selatan
  • 2013: Angga Pratama/Rian Agung Saputro, Indonesia
  • 2014: Marcus Fernaldi Gideon/Markis Kido, Indonesia
  • 2015: Berry Angriawan/Rian Agung Saputro, Indonesia
  • 2016: Wahyu Nayaka/Kevin Sanjaya, Indonesia
  • 2017: Ditiadakan
  • 2018: Marcus Fernaldi Gideon/Kevin Sanjaya Sukamuljo, Indonesia
  • 2019: Marcus Fernaldi Gideon/Kevin Sanjaya Sukamuljo, Indonesia
  • 2020: Marcus Fernaldi Gideon/Kevin Sanjaya Sukamuljo, Indonesia
  • 2021: Takuro Hoki/Yugo Kobayashi, Jepang
  • 2022: Fajar Alfian/Muhammad Rian Ardianto, Indonesia
  • 2023: Leo Rolly Carnando/Daniel Marthin, Indonesia
  • 2024: Leo Rolly Carnando/Daniel Marthin, Indonesia.

Baca juga: Profil Li Junhui, Pebulu Tangkis Ganda Putra China yang Pensiun karena Cedera

Ganda Putri

  • 2010: Luo Ying/Luo Yu, China
  • 2011: Vivian Hoo Kah Mun/Woo Khe Mei, Malaysia
  • 2012: Misaki Matsutomo/Ayaka Takahashi, Jepang
  • 2013: Luo Ying/Luo Yu, China
  • 2014: Shendy Puspa Irawati/Vita Marissa, Indonesia
  • 2015: Tang Yuanting/Yu Yang, China
  • 2016: Chae Yoo-jung/Kim so-Yeoung, Korea Selatan
  • 2017: Ditiadakan
  • 2018: Misaki Matsutomo/Ayaka Takahashi, Jepang
  • 2019: Misaki Matsutomo/Ayaka Takahashi, Jepang
  • 2020: Greysia Polli/Apriyani Rahayu, Indonesia
  • 2021: Nami Matsuyama/Chiharu Shida, Jepang
  • 2022: Cheng Qing Chen/Jia Yi Fan, China
  • 2023: Liau Sheng Shu/Zhang Shu Xian, China
  • 2024: Liu Sheng Shu/Tan Ning, China.

Baca juga: Final Ganda Putri Olimpiade Tokyo 2020, Bagaimana Peluang Greysia/Apriyani?

Ganda Campuran

  • 2010: Tontowi Ahmad/Liliyana Natsir, Indonesia
  • 2011: He Hanbin/Bao Yixin, China
  • 2012: Tontowi Ahmad/Liliyana Natsir, Indonesia
  • 2013: Praveen Jordan/Vita Marissa, Indonesia
  • 2014: Riky Widianto/Richi Puspita Dili, Indonesia
  • 2015: Tontowi Ahmad/Liliyana Natsir, Indonesia
  • 2016: Ronald Alexander/Melati Daeva Oktavianti, Indonesia
  • 2017: Ditiadakan
  • 2018: Zheng Si Wei/Huang Ya Qiong, China
  • 2019: Zheng Si Wei/Huang Ya Qiong, China
  • 2020: Zheng Si Wei/Huang Ya Qiong, China
  • 2021: Dechapol Puavaranukroh/Sapsiree Taerattanachai, Thailand
  • 2022: Zheng Si Wei/Huang Ya Qiong, China
  • 2023: Feng Yan Zhe/Huang Dong Ping, China
  • 2024: Zheng Si Wei/Huang Ya Qiong, China.

Baca juga: Rangking BWF Terbaru Usai Indonesia Masters 2024, Ginting dan Jonatan Turun Peringkat!

Sejak turnamen Indonesia Masters pertama kali digelar pada 2010, Indonesia menjadi negara yang paling banyak meraih gelar juara.

Total Indonesia sudah 29 kali menjadi pemenang dengan rincian 8 gelar tunggal putra, 1 tunggal putri, 12 ganda putra, 2 ganda putri, dan 6 ganda campuran.

China berada di posisi kedua dengan raihan 20 gelar, disusul Jepang pada posisi ketiga dengan 6 enam gelar.

Simak breaking news dan berita pilihan kami langsung di ponselmu. Pilih saluran andalanmu akses berita Kompas.com WhatsApp Channel : https://www.whatsapp.com/channel/0029VaFPbedBPzjZrk13HO3D. Pastikan kamu sudah install aplikasi WhatsApp ya.

Tag

  • Indonesia Masters
  • juara Indonesia Masters
  • daftar juara Indonesia Masters sepanjang masa
Lihat Tren Selengkapnya
  • Jadwal Lengkap dan Link Streaming Indonesia Masters 2025 Mulai Hari Ini
  • Daftar Harga Tiket Indonesia Masters 2025 dan Cara Belinya
  • Rangking BWF Terbaru Usai Indonesia Masters 2024, Ginting dan Jonatan Turun Peringkat!
  • Serba-serbi Indonesia Masters 2022: Hakim Garis Tidur, Isu Atlet Keracunan hingga Pensiunnya Greysia Polii

Pilihan Untukmu

`); var wSpecStop = createElementFromHTML(`

Konten disembunyikan.
Muat ulang halaman untuk perbarui rekomendasi.

`); reactionPopup.querySelector('.buttonShare').setAttribute('data-title', item.title); reactionPopup.querySelector('.buttonShare').setAttribute('data-url', itemUrl); reactionPopup.querySelector('.buttonShare').setAttribute('data-campaign', 'AIML_Widget_Desktop'); let userFeedback = new UserFeedback(resultObj.engine['tracker_algsrc'], itemUrl + tracker_params, jxRecHelper, index); reactionPopup.querySelector('.buttonBookmark').addEventListener('click', function() { do_bookmark(itemUrl, index, userFeedback); }); reactionPopup.querySelector('.buttonShare').addEventListener('click', function() { userFeedback.event('share'); }); reactionPopup.querySelector('.buttonNotInterest').addEventListener('click', function() { if (getCookie('kmps_usrid')) { hideThisArt(this); userFeedback.event('not-interested'); } else { const parentAction = this.parentElement.parentElement.parentElement if (!!parentAction) { let indexElement = parentAction.getAttribute('data-index') if (indexElement != 'undefined') { localStorage.setItem('reaction_not_interest_temp', JSON.stringify({ urlpage: items[indexElement].url })) } } window.location.href = "https://account.kompas.com/login/a29tcGFz/" + btoa(window.location.href); } }); /** * trigger action "userFeedback" that user not interest item before, when not interest without login */ if (getCookie('kmps_usrid') && localStorage.getItem('reaction_not_interest_temp')) { const tempUrlNotInterest = JSON.parse(localStorage.getItem('reaction_not_interest_temp')) if (itemUrl == tempUrlNotInterest.urlpage) { userFeedback.event('not-interested'); localStorage.removeItem('reaction_not_interest_temp'); } } wSpecStop.querySelector('.wSpec-stop-undo').addEventListener('click', function() { showThisArt(this); userFeedback.event('un-not-interested'); }); recItem.appendChild(buttonOption); recItem.appendChild(reactionPopup); recItem.appendChild(wSpecStop); } var recItemWrapperA = createElement('a', null, null, null); recItemWrapperA.setAttribute('href', itemUrl + tracker_params); var titleDiv = createElement('h4', null, null, [cssClasses.title]); var titleTextNode = document.createTextNode(item.title); if (item.itemType == 'video') { var iconVideo = createElement('div', null, null, ['icoInline', 'icoVideo']); iconVideo.style.marginRight = '5px'; titleDiv.appendChild(iconVideo); } titleDiv.appendChild(titleTextNode); var sourceDiv = null; if (item.hasOwnProperty('method')) { sourceDiv = createElement('div', null, null, [cssClasses.source], resultObj.engine['type'] + ' . ' + item.method.toUpperCase()); } else { var sourceDiv = createElement('div', null, null, [cssClasses.source], resultObj.engine['type']); } var textWrapper = createElement('div', null, null, [cssClasses.text_wrapper]); textWrapper.appendChild(categoryDiv); textWrapper.appendChild(titleDiv); textWrapper.appendChild(sourceDiv); recItemWrapper.appendChild(imgWrapper); recItemWrapper.appendChild(textWrapper); recItemWrapperA.appendChild(recItemWrapper); recItem.appendChild(recItemWrapperA); widgetWrapper.appendChild(recItem); // hook up the click handler for this item // recItem.onclick = handleClick.bind(null, jxRecHelper, itemUrl + tracker_params, index); recItemWrapperA.onclick = handleClick.bind(null, jxRecHelper, itemUrl + tracker_params, index); }); } // end while var endDate = new Date(); var loadtime = (endDate.getTime() - startDate.getTime()); trackEventGa('AIML Article Recommendation', 'Content Loaded', 'algsrc='+algsrc+',site=TREN,device=desktop,loadtime=' + loadtime) let domain = window.location.hostname; if(domain=='www.kompas.com'){ var url=window.location.href.split("/"); domain=url[2]+'/'+url[3] } let user_subs_type = "Gues"; let subs_type = ""; let is_lgn = 0; let engine = algsrc; if(getCookie('kmps_usrid')){is_lgn=1}; let time_load = loadtime; resolve(); /*** * JXRECSDK NOTES 3 of 5 - * pass all the info about the items to the rec helper * each one is an object: ALL MANDATORY * div * id * pos */ jxRecHelper.items(widgetItemArr); /*** * JXRECSDK NOTES 4 of 5 - * Call the ready() of the helper object when the recommendation * results have been populated to the widget * (This will register the action=ready event) */ if (resultObj.engine['type'] == 'api-1') { jxRecHelper.ready(resultObj.options.algo + ":" + resultObj.options.version); } else { jxRecHelper.ready(resultObj.engine['type']); } } else { jxRecHelper.error(204); console.error("Error: no recommendation items"); return; } } catch (err) { jxRecHelper.error(901); console.log(err.stack); let domain = window.location.hostname; if(domain=='www.kompas.com'){ var url=window.location.href.split("/"); domain=url[2]+'/'+url[3] } let user_subs_type = "Gues"; let subs_type = "" let is_lgn = 0; let engine = algsrc; if(getCookie('kmps_usrid')){is_lgn=1}; let endDate = new Date(); let time_load = (endDate.getTime() - startDate.getTime()); } }); } const _jxRecSdkURL = 'https://kgdata-cdn.s3.ap-southeast-1.amazonaws.com/tracker/p/kompasreco/oval_web_analytics_latest.js'; var startDate = new Date(); class OneWidget { constructor() { //this is also the one we will pass to the JX rec helper object when //we instantiate it: //In this implementation most of these come from the options obj //on the publisher page. this._options = { accountid: '9262bf2590d558736cac4fff7978fcb1', pageurl: 'https://www.kompas.com/tren/read/2025/01/22/193000665/daftar-juara-indonesia-masters-dari-masa-ke-masa-indonesia-unggul-dari', widget_id: '1000183-6xWeiWZFIM', type: 'pages', container: 'rekomendasi-konten-pilihan-untukmu-aiml', keywords: content_tags, title: title, customid: "65", count: 14, }; this._containerId = this._options.container; this._container = document.getElementById(this._containerId); this._engines = [{"url":"https:\/\/recommendation.jixie.media\/v1\/recommendation","method":"GET","pageurl":"https:\/\/www.kompas.com\/tren\/read\/2025\/01\/22\/193000665\/daftar-juara-indonesia-masters-dari-masa-ke-masa-indonesia-unggul-dari","system":"jx","type":"api-1","tracker_params":"?source=widgetML","tracker_algsrc":"V","count":14,"page_status":"read","excludeitemids":"20250122193000665"}]; } kickOff() { startDate = new Date(); const rand = Math.floor(Math.random() * 1000); /*const randSystem = Math.floor(Math.random() * 3); this._engine = this._engines[randSystem] if (location.hostname.indexOf('lestari') != -1) { this._engine = this._engines[1] }*/ this._engine = this._engines[0]; this._options.system = this._engine['system'] trackEventGa('AIML Article Recommendation', 'Widget load', 'algsrc=' + this._engine['tracker_algsrc'] + ',site=TREN,device=desktop') let promJXSDK = fetchJSFileP(_jxRecSdkURL); let thisObj = this; // first we wait on the JX REC SDK to be loaded and initialized let recHelperObj = null; let recResults = null; promJXSDK .then(function() { /*** * JXRECSDK NOTES 1 of 5 - INSTANTIATION OF A JX REC HELPER OBJECT * Call this AFTER JX REC SDK is loaded but BEFORE you call your REC * backend. * * param: MANDATORY options object * options object must at a minimal have * accountid: get from jixie * widgetid: get from jixie * container: DIV ID of the destination div to house the widget * (for jixie widget this is just the options object passed from the page) * * (This will also register the action=load event) */ recHelperObj = jxRecMgr.createJxRecHelper(thisObj._options); let basicInfo = thisObj._options; basicInfo.engine = thisObj._engine if (basicInfo.engine.type == 'api-1') { var options = { count: basicInfo['count'], adpositions: "", keywords: basicInfo['keywords'], title: basicInfo['title'], date_published: "2025-01-22", pagecategory: "TREN", algo: "mixed" }; if(getCookie('kmps_usrid')){ var kg = { pagetype:basicInfo.engine.page_status, uid:getCookie('kmps_usrid'), ukid:getCookie('kmp_uid') } if(basicInfo.engine.page_status=='read'){ kg['excludeitemids'] = basicInfo.engine.excludeitemids; kg['multiFormat'] = true; } options['additional'] = { kg:kg }; } return recHelperObj.getJxRecommendations(options); } else { return fetchRecommendationsP(basicInfo, recHelperObj.getJxUserInfo()); } }) .then(function(resp) { if (thisObj._engine.type == 'api-3') { recResults = new Object recResults.items = resp.docs.result; } else { recResults = resp; } recResults.engine = thisObj._engine; if (!resp || !recResults.items || recResults.items.length == 0) { /*** * JXRECSDK NOTES 2 of 5 - * Call the error() function on the recHelper when either an error * has occured in the fetching or there are no recommended items * * (This will register the action=error event) */ recHelperObj.error(204); throw "no recommendation results"; } }) .then(function() { // everything is ready (recommendation results, css): document.getElementById("rekomendasi-konten-pilihan-untukmu-aiml").classList.remove("-loading"); document.querySelector('.wSpec-list').remove(); createDisplay(rand, thisObj._container, recResults, recHelperObj) .then(function() { toggleDropdown(); //observe lozad lozad('.lozad', { load: function(el) { el.src = el.dataset.src; el.onload = function() { el.classList.add('fade') } } }).observe() }) }) .catch(function(error) { console.log(`Unable to create recommendations widget ${error.stack} ${error.message}`); }); } } var limit_gtm_ready = 1; function check_gtm_ready() { if ('ga' in window) { // create a new instance of our widget based on the options const newW = new OneWidget(); newW.kickOff(); } else { const timeout_gtm_ready = setTimeout(check_gtm_ready, 500) limit_gtm_ready += 1; if (limit_gtm_ready > 10) { clearTimeout(timeout_gtm_ready); const newW = new OneWidget(); newW.kickOff(); } } } check_gtm_ready() document.querySelector('.wSpec-secret').addEventListener('click', function(e) { e.preventDefault(); let wSl = document.querySelectorAll('.wSpec-source'); if (wSl.length > 0) { for (let i = 0; i < wSl.length; i++) { wSl[i].classList.toggle('show') } } }) function trackEventGa(category, action, label) { if ("ga" in window) { ga(function() { tracker = ga.getAll()[0]; if (tracker) { tracker.send("event", category, action, label); console.log('track event ', category, action, label) } }) } } function formBody(obj) { let formBody = []; for (var property in obj) { let encodedKey = encodeURIComponent(property); let encodedValue = encodeURIComponent(obj[property]); formBody.push(encodedKey + "=" + encodedValue); } return formBody.join("&"); } function getCookie(name) { var name = name + '='; var cookies = decodeURIComponent(document.cookie).split(';'); for (var i = 0; i < cookies.length; i++) { var c = cookies[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } } function get_guid(url) { const videoPath = url.match(/\/watch\/(\d+)/); if (videoPath) { return `video.${videoPath[1]}`; } let arrayUrl = url.split('/'); let readPath = arrayUrl.indexOf('read'); if (arrayUrl[readPath + 1] == 'xml') { readPath += 1; } let year = arrayUrl[readPath + 1]; let month = arrayUrl[readPath + 2]; let date = arrayUrl[readPath + 3]; let id = arrayUrl[readPath + 4]; let guid = `.xml.${year}.${month}.${date}.${id}`; return guid; } function toggleDropdown() { let tdd = document.querySelectorAll('[data-dropdown]') if (!!tdd) { tdd.forEach((el) => { el.addEventListener('click', function() { el.parentElement.classList.toggle('-active') let saved = el.parentElement.getAttribute('data-saved') let kmps_usrid = getCookie('kmps_usrid'); if (kmps_usrid && !saved && el.parentElement.classList.contains('-active')) { let url = el.parentElement.getAttribute('data-url'); let guid = get_guid(url); check_bookmark( kmps_usrid, guid ).then(function(resp) { if (resp.hasOwnProperty('total_data')) { if (resp.total_data > 0) { el.parentElement.querySelector('.buttonBookmark').classList.add('-active'); el.parentElement.querySelector('.buttonBookmark').innerHTML = 'Hapus dari tersimpan'; el.parentElement.setAttribute('data-saved', 'true'); } else { el.parentElement.setAttribute('data-saved', 'false'); } } }) } }) document.addEventListener("click", function(e) { // console.log(e.target) if (el.contains(e.target)) { // console.log(tdd) } else { el.parentElement.classList.remove('-active') } }); }); } } function check_bookmark(kmps_usrid, guid) { let url = `https://api.kompas.com/2021/reaction/bookmark/list?kmps_usrid=${kmps_usrid}&guid=${guid}`; return new Promise(function(resolve, reject) { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { resolve(JSON.parse(this.responseText)) } }; xmlhttp.open("GET", url, true); xmlhttp.send(); }); } function do_bookmark(pageurl, pos, userFeedback) { const wSpecItem = document.querySelector(`.wSpec-item[data-index="${pos}"]`); const btnBookmark = wSpecItem.querySelector('.buttonBookmark'); const kmps_usrid = getCookie('kmps_usrid'); const guid = get_guid(pageurl); const type = pageurl.match(/\/watch\/(\d+)/) ? 'video' : 'article'; if (kmps_usrid) { if (btnBookmark.classList.contains('-active')) { set_unbookmark({ guid: guid, kmps_usrid: kmps_usrid, type: type }).then(function(resp) { btnBookmark.classList.remove('-active'); btnBookmark.innerHTML = 'Simpan artikel'; reactionToast('Artikel berhasil dihapus dari list yang disimpan'); userFeedback.event('un-save'); }).catch(function(resp) { // message: "Data doesn't exists" if (resp.hasOwnProperty('message') && resp.message.includes('exist')) { btnBookmark.classList.remove('-active'); btnBookmark.innerHTML = 'Simpan artikel'; reactionToast('Artikel berhasil dihapus dari list yang disimpan'); } }) } else { const user_bookmark_url = "https://activity.kompas.com/saved?order=desc"; set_bookmark({ guid: guid, kmps_usrid: kmps_usrid, type: type, publisher: 'kompas', platform: 'desktop' }).then(function(resp) { btnBookmark.classList.add('-active'); btnBookmark.innerHTML = 'Hapus dari tersimpan'; reactionToast('Artikel berhasil disimpan', user_bookmark_url); userFeedback.event('save'); }).catch(function(resp) { // message: "Data already exist" if (resp.hasOwnProperty('message') && resp.message.includes('exist')) { btnBookmark.classList.add('-active'); btnBookmark.innerHTML = 'Hapus dari tersimpan'; reactionToast('Artikel berhasil disimpan', user_bookmark_url); } }) } } else { const login_url = "https://account.kompas.com/login/a29tcGFz/" + btoa(window.location.href); window.location.href = login_url; } } function set_bookmark(data) { const url = "https://api.kompas.com/2021/reaction/bookmark/add"; return new Promise(function(resolve, reject) { const xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 201) { resolve(JSON.parse(this.responseText)); } else if (this.readyState == 4 && this.status == 400) { reject(JSON.parse(this.responseText)); } }; xmlhttp.open("POST", url, true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"); xmlhttp.send(formBody(data)); }); } function set_unbookmark(data) { const url = "https://api.kompas.com/2021/reaction/bookmark/delete"; return new Promise(function(resolve, reject) { const xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { resolve(JSON.parse(this.responseText)); } else if (this.readyState == 4 && this.status == 400) { reject(JSON.parse(this.responseText)); } }; xmlhttp.open("POST", url, true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"); xmlhttp.send(formBody(data)); }); } class UserFeedback { constructor(engine, pageurl, jxRecHelper, pos) { this.engine = engine; this.pageurl = pageurl; this.jxRecHelper = jxRecHelper; this.pos = pos; } event(feedback) { if (this.engine == 'C') { const xmlhttp = new XMLHttpRequest(); let params = { domain: 'kompas.com', ce_userid: getCookie('kmps_usrid'), ce_sessionid: getCookie('ukid'), ce_pageurl: this.pageurl, engine: 'C', ce_feedback: feedback } xmlhttp.open("GET", 'https://apis.kgdata.dev/v1/aiml/feedback-widgetml' + formatParams(params)); xmlhttp.send(); } else if (this.engine == 'V') { if (feedback == 'share') { this.jxRecHelper.shared(this.pos); } else if (feedback == 'save') { this.jxRecHelper.bookmarked(this.pos); } else if (feedback == 'not-interested') { this.jxRecHelper.hidden(this.pos); } else if (feedback == 'un-not-interested') { this.jxRecHelper.unhidden(this.pos); } } } } function formatParams(params) { return "?" + Object .keys(params) .map(function(key) { return key + "=" + encodeURIComponent(params[key]) }) .join("&") } document.addEventListener("click", function(e){ let dx = document.querySelectorAll('[data-dropdown]') if(dx) { dx.forEach(function(el){ if(el.contains(e.target)) { el.parentElement.classList.toggle('-active') } else { el.parentElement.classList.remove('-active') } }) } })

Lihat Semua
  • Voucher Spesial, Klaim Sekarang!
  • Games Permainan Kata Bahasa Indonesia
  • Ompa: Terbang Layang
  • TTS - Serba serbi Demokrasi


Daftar Juara Indonesia Masters dari Masa ke Masa, Indonesia Unggul dari China (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Roderick King

Last Updated:

Views: 5817

Rating: 4 / 5 (71 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Roderick King

Birthday: 1997-10-09

Address: 3782 Madge Knoll, East Dudley, MA 63913

Phone: +2521695290067

Job: Customer Sales Coordinator

Hobby: Gunsmithing, Embroidery, Parkour, Kitesurfing, Rock climbing, Sand art, Beekeeping

Introduction: My name is Roderick King, I am a cute, splendid, excited, perfect, gentle, funny, vivacious person who loves writing and wants to share my knowledge and understanding with you.