Pengguna:SNN95/tutupCGP.js

Daripada Wikipedia, ensiklopedia bebas.

Catatan: Selepas menyiarkan perubahan, anda mungkin perlu memintas cache pelayar untuk melihatnya.

  • Firefox / Safari: Tahan Shift sambil mengklik Reload, atau tekan sama ada Ctrl-F5 atau Ctrl-R (⌘-R pada Mac)
  • Google Chrome: Tekan Ctrl-Shift-R (⌘-Shift-R pada Mac)
  • Internet Explorer / Edge: Tahan Ctrl sambil mengklik Refresh, atau tekan Ctrl-F5
  • Opera: Tekan Ctrl-F5.
// Lihat dokumentasi di [[:en:User:Jujutacular/closeFPC]]
// Kod ini berdasarkan [[:en:User:Mr.Z-man/closeAFD]]
// Diterjemah untuk penggunaan WBM oleh [[Pengguna:SNN95]]

importScript('Pengguna:SNN95/displaymessage.js');
var wgPageName = mw.config.get('wgPageName');
var wgCanonicalNamespace = mw.config.get('wgCanonicalNamespace');

if (wgPageName.indexOf('Wikipedia:Calon_gambar_pilihan/') != -1) {

var closeFPC_PageName = wgPageName.replace(/_/g, ' ');
var closeFPC_AJAXnumber = 0;

var isDelist = closeFPC_PageName.replace(/^.*\b(buang)\b.*$/,"$1");

function closeFPC_init() {
  if (!wfSupportsAjax()) {
    displayMessage('<span style="color:red; font-size:120%">Pelayar anda sepertinya tidak menyokong AJAX, yang diperlukan untuk skrip tutupCGP.</span>');
    return;
  }

  if (isDelist == "delist") {
    displayMessage('<span style="color:red; font-size:120%">Pencalonan buang tidak disokong oleh skrip ini.</span>');
    return;
  }

  form = '<div id="closeFPC_initialform">'+
    '<h3>Menutup '+closeFPC_PageName+'</h3>'+
    '<h4>For promotion:</h4>'+
    '<label for="closeFPC_nominator">Pencalon (tanpa "Pengguna:"): </label><input type="text" id="closeFPC_nominator" name="closeFPC_nominator" /><br>'+
    '<label for="closeFPC_nominator2">Pencalon 2 (jika ada): </label><input type="text" id="closeFPC_nominator2" name="closeFPC_nominator2" /><br>'+
    //'<label for="closeFPC_creator_nonwiki">Pencipta (jika bukan ahli Wikipedia): </label><input type="text" id="closeFPC_creator_nonwiki" name="closeFPC_creator_nonwiki" /><br>'+
    '<label for="closeFPC_creator_wiki">Pencipta (jika ahli Wikipedia): </label><input type="text" id="closeFPC_creator_wiki" name="closeFPC_creator_wiki" /><br>'+
    '<label for="closeFPC_editor">Editor imej/Pemulihan: </label><input type="text" id="closeFPC_editor" name="closeFPC_editor" /><br>'+
    '<label for="closeFPC_editor2">Editor imej/Pemulihan 2: </label><input type="text" id="closeFPC_editor2" name="closeFPC_editor2" /><br>'+
    '<label for="closeFPC_promoted_file">Fail yang dipromosikan (tanpa "Fail:"): </label><input type="text" id="closeFPC_promoted_file" name="closeFPC_promoted_file" /><br>'+
    '<label for="closeFPC_name">Nama pencalonan: </label><input type="text" id="closeFPC_name" name="closeFPC_name" /><br>'+
    '<label for="closeFPC_cat">Kategori utama: </label><input type="text" id="closeFPC_cat" name="closeFPC_cat" /><br><br>'+
    //'<label for="closeFPC_subcat">Subkategori: </label><input type="text" id="closeFPC_subcat" name="closeFPC_subcat" /><br><br>'+
    '<label for="closeFPC_reason">Rasional penutupan tambahan (pilihan): </label><input type="text" id="closeFPC_reason" name="closeFPC_reason" /><br>'+
    '<input type="button" id="closeFPC_promote_button" name="closeFPC_promote_button" value="Promosi" onclick="closeFPC_close(\'promote\')" />'+
    '<input type="button" id="closeFPC_nopromote_button" name="closeFPC_nopromote_button" value="Jangan promosi" onclick="closeFPC_close(\'nopromote\')" /></div>';
  displayMessage(form);
}

function closeFPC_close(close) {
  closetype = close;
  var nominator = document.getElementById('closeFPC_nominator').value;
  var nominator2 = document.getElementById('closeFPC_nominator2').value;
  //var creator_nonwiki = document.getElementById('closeFPC_creator_nonwiki').value;
  var creator_wiki = document.getElementById('closeFPC_creator_wiki').value;
  var editor = document.getElementById('closeFPC_editor').value;
  var editor2 = document.getElementById('closeFPC_editor2').value;
  var promoted_file = document.getElementById('closeFPC_promoted_file').value;
  var nom_name = document.getElementById('closeFPC_name').value;
  var cat = document.getElementById('closeFPC_cat').value;
  //var subcat = document.getElementById('closeFPC_subcat').value;
  var reason = document.getElementById('closeFPC_reason').value;
  var FPClink = '[['+closeFPC_PageName+']]';

  var today = new Date();
  var monthnames = new Array("Januari", "Februari", "Mac", "April", "Mei", "Jun", "Julai", "Ogos", "September", "Oktober", "November", "Disember");
  var month = monthnames[today.getUTCMonth()];
  var day = today.getUTCDate();
  var year = today.getUTCFullYear();
  var abbr_month;
  if (month == "Januari") {
    abbr_month = "Jan";
  }
  else if (month == "Februari") {
    abbr_month = "Feb";
  }
  else if (month == "Mac") {
    abbr_month = "Mac";
  }
  else if (month == "April") {
    abbr_month = "Apr";
  }
  else if (month == "Mei") {
    abbr_month = "Mei";
  }
  else if (month == "Jun") {
    abbr_month = "Jun";
  }
  else if (month == "Julai") {
    abbr_month = "Julai";
  }
  else if (month == "Ogos") {
    abbr_month = "Ogo";
  }
  else if (month == "September") {
    abbr_month = "Sep";
  }
  else if (month == "Oktober") {
    abbr_month = "Okt";
  }
  else if (month == "November") {
    abbr_month = "Nov";
  }
  else if (month == "Disember") {
    abbr_month = "Dis";
  }

  var PageName_actual = closeFPC_PageName.replace(/Wikipedia:Calon gambar pilihan\//,'');
  if (reason != '') {
    reason = "\n*"+reason+" ~~"+"~~";
  }
  displayMessage('<ul id="closeFPC_status"></ul><ul id="closeFPC_finish"></ul>');
  document.getElementById('closeFPC_finish').innerHTML += '<span id="closeFPC_finished_wrapper"><span id="closeFPC_finished_main" style="display:none"><li id="closeFPC_done"><b>Siap (<a href="/wiki/'+encodeURI(closeFPC_PageName)+'?action=purge" title="'+closeFPC_PageName+'">Muat semula laman</a>)</b></li></span></span>';
  var FPCpage = closeFPC_getPageText(closeFPC_PageName);
  var isClosed = FPCpage.match(/{{FPCresult\|/);
  if (isClosed == "{{FPCresult|") {
    displayMessage('<span style="color:red; font-size:120%">Nampaknya pencalonan ini sudah ditutup.</span>');
    return;
  }
  token = closeFPC_getToken(true);
  if (closetype == "promote") {
    
    // Checks for missing information
    if (nominator == '') {
      displayMessage('<span style="color:red; font-size:120%">Seorang pencalon belum ditentukan. Seorang pencalon diperlukan untuk promosi.</span>');
      return;
    }
    //if (creator_nonwiki == '' && creator_wiki == '') {
    //  displayMessage('<span style="color:red; font-size:120%">Seorang pencipta belum ditentukan. Pencipta diperlukan untuk promosi. Gunakan "Tidak Diketahui" di bawah bukan Wikipedia jika pencipta tidak diketahui.</span>');
    //  return;
    //}
    if (promoted_file == '') {
      displayMessage('<span style="color:red; font-size:120%">Nama fail belum ditentukan. Nama fail diperlukan untuk promosi.</span>');
      return;
    }
    var goodFile = promoted_file.match(/\./);
    if (!(goodFile == '.')) {
      displayMessage('<span style="color:red; font-size:120%">Nama fail tertentu tidak diformat secara betul.</span>');
      return;
    }
    if (nom_name == '') {
      displayMessage('<span style="color:red; font-size:120%">Nama untuk pencalonan belum ditentukan. Nama diperlukan untuk promosi.</span>');
      return;
    }
    if (cat == '') {
      displayMessage('<span style="color:red; font-size:120%">Kategori untuk pencalonan belum ditentukan. Kategori diperlukan untuk promosi.</span>');
      return;
    }
    var promoted_file_error = promoted_file.match(/Fail:/);
    if (promoted_file_error == "Fail:") {
      displayMessage('<span style="color:red; font-size:120%">Ralat: nama fail yang dimasukkan mengandungi "Fail:".</span>');
      return;
    }
    var username_error1 = nominator.match(/User:/);
    var username_error2 = nominator2.match(/User:/);
    var username_error3 = creator_wiki.match(/User:/);
    var username_error4 = editor.match(/User:/);
    var username_error5 = editor2.match(/User:/);
    if (username_error1 == "Pengguna:" || username_error2 == "Pengguna:" || username_error3 == "Pengguna:" || username_error4 == "Pengguna:" || username_error5 == "Pengguna:") {
      displayMessage('<span style="color:red; font-size:120%">Error: username entered contains "Pengguna:".</span>');
      return;
    }

    // Adds image, and removes older image at WP:FP
    var FP = "Wikipedia:Gambar pilihan";
    var FPpage = closeFPC_getPageText(FP);
    if (cat == "Haiwan dan Tumbuhan") {
      FPpage = FPpage.replace(/<!-- start of Animals -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Animals -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Seni dan Arkeologi") {
      FPpage = FPpage.replace(/<!-- start of Artwork -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Artwork -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Fantasi") {
      FPpage = FPpage.replace(/<!-- start of Culture, entertainment, and lifestyle -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Culture, entertainment, and lifestyle -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Fizik dan Astronomi") {
      FPpage = FPpage.replace(/<!-- start of Diagrams, drawings, and maps -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Diagrams, drawings, and maps -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Geografi") {
      FPpage = FPpage.replace(/<!-- start of Engineering and technology -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Engineering and technology -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Kimia") {
      FPpage = FPpage.replace(/<!-- start of Food and drink -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Food and drink -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Makanan dan Minuman") {
      FPpage = FPpage.replace(/<!-- start of Fungi -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Fungi -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Sejarah") {
      FPpage = FPpage.replace(/<!-- start of History -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of History -->/,"<!-- end of "+cat+" -->");
    } else if (cat == "Teknologi") {
      FPpage = FPpage.replace(/<!-- start of Natural phenomena -->/, "<!-- start of "+cat+" -->[[Fail:"+promoted_file+"|150px]]\n|");
      FPpage = FPpage.replace(/\n\|\[\[Fail:[^|]+\|150px]]<!-- end of Natural phenomena -->/,"<!-- end of "+cat+" -->");
    } else {
      displayMessage('<span style="color:red; font-size:120%">Kategori tidak sah telah ditentukan.</span>');
      return;
    }
    closeFPC_editPage(FP, FPpage, token, "Tambah [[Fail:"+promoted_file+"]] kepada "+cat);

    // Adds image to WP:GO
    var GO = "Wikipedia:Goings-on";
    var GOpage = closeFPC_getPageText(GO);
    GOpage = GOpage.replace(/\n\n'''\[\[Wikipedia:Featured portals\|Portals]]/,"\n* [[:Fail:"+promoted_file+"|"+nom_name+"]] ("+day+" "+abbr_month+")\n\n'''[[Wikipedia:Featured portals|Portals]]");
    closeFPC_editPage(GO, GOpage, token, "+[[Fail:"+promoted_file+"]] to pictures");


    // Adds Featured Picture template to file description page
    var promoted_file_page = "Fail:"+promoted_file;
    var promoted_file_pageText = closeFPC_getPageText(promoted_file_page);
    if (promoted_file_pageText == "undefined") {
      promoted_file_pageText = "{{"+"FeaturedPicture|"+PageName_actual+"}}";
    }
    else {
      promoted_file_pageText = "{{"+"FeaturedPicture|"+PageName_actual+"}}\n"+promoted_file_pageText;
    }
    closeFPC_editPage(promoted_file_page, promoted_file_pageText, token, "Gambar pilihan, mengikuti "+FPClink);

    // Closes nomination as promote
    FPCpage = FPCpage.replace(/<!-- undian tambahan di atas baris ini ->\n/,"<! - undian tambahan  di atas baris ini -->\n{"+"{FPCresult|Dipromosikan|Fail:"+promoted_file+"}} --~~"+"~~"+reason+"\n");
    closeFPC_editPage(closeFPC_PageName, FPCpage, token, "Ditutup, sudah mempromosikan [[:Fail:"+promoted_file+"]]");
    
    // Adds image to New featured content
    var NFC = "Template:Announcements/New featured content";
    var NFCpage = closeFPC_getPageText(NFC);
    NFCpage = NFCpage.replace(/<!-- Gambar \(15 pertama yang terkini\) -->/,"<!-- Gambar (15 pertama yang terkini) -->\n* [[:Fail:"+promoted_file+"|"+nom_name+"]]");
    NFCpage = NFCpage.replace(/\n\* \[\[:Fail:[^|]+\|[^\]]+]] ?<!-- End of FPs -->/," <!-- End of FPs -->");
    closeFPC_editPage(NFC, NFCpage, token, "+[[Fail:"+promoted_file+"]] to FPs");

    // Adds image to FPC thumbs
    var thumbs = "Wikipedia:Lakaran kenit gambar pilihan";
    var currentthumbs = closeFPC_getPageText(thumbs);
    currentthumbs = currentthumbs.replace(/#LENCONG \[\[/,'');
    currentthumbs = currentthumbs.replace(/]]/,'');
    var currentthumbs_page = closeFPC_getPageText(currentthumbs);
    currentthumbs_page = currentthumbs_page.replace(/<gallery>/,"<gallery>\nFail:"+promoted_file+"|"+nom_name);
    closeFPC_editPage(currentthumbs, currentthumbs_page, token, "+[[Fail:"+promoted_file+"]]");

    // Notifies nominator of promotion
    if (nominator != creator_wiki && nominator != editor && nominator != editor2) {
    var nominator_talk = "Perbincangan pengguna:"+nominator;
    var nomtalkpage = closeFPC_getPageText(nominator_talk);
    nomtalkpage = nomtalkpage + "\n\n==[["+closeFPC_PageName+"]]==\n{"+"{subst:PromotedFPC|Fail:"+promoted_file+"}}";
    closeFPC_editPage(nominator_talk, nomtalkpage, token, FPClink);
    }

    // Notifies nominator2 of promotion
    if (nominator2 != '' && nominator2 != creator_wiki && nominator2 != editor && nominator2 != editor2) {
    var nominator2_talk = "Perbincangan pengguna:"+nominator2;
    var nom2talkpage = closeFPC_getPageText(nominator2_talk);
    nom2talkpage = nom2talkpage + "\n\n==[["+closeFPC_PageName+"]]==\n{"+"{subst:PromotedFPC|Fail:"+promoted_file+"}}";
    closeFPC_editPage(nominator2_talk, nom2talkpage, token, FPClink);
    }

    // Notifies creator of promotion
    if (creator_wiki != '') {
      var creator_talk = "Perbincangan pengguna:"+creator_wiki;
      var creatortalkpage = closeFPC_getPageText(creator_talk);
      creatortalkpage = creatortalkpage + "\n\n==[["+closeFPC_PageName+"]]==\n{"+"{subst:UploadedFPC|Fail:"+promoted_file+"}}";
      closeFPC_editPage(creator_talk, creatortalkpage, token, FPClink);
    }
    
    // Notifies editor of promotion
    if (editor != '') {
      var editor_talk = "Perbincangan pengguna:"+editor;
      var editortalkpage = closeFPC_getPageText(editor_talk);
      editortalkpage = editortalkpage + "\n\n==[["+closeFPC_PageName+"]]==\n{"+"{subst:UploadedFPC|Fail:"+promoted_file+"}}";
      closeFPC_editPage(editor_talk, editortalkpage, token, FPClink);
    }

    // Notifies editor2 of promotion
    if (editor2 != '') {
      var editor2_talk = "Perbincangan pengguna:"+editor2;
      var editor2talkpage = closeFPC_getPageText(editor2_talk);
      editor2talkpage = editor2talkpage + "\n\n==[["+closeFPC_PageName+"]]==\n{"+"{subst:UploadedFPC|Fail:"+promoted_file+"}}";
      closeFPC_editPage(editor2_talk, editor2talkpage, token, FPClink);
    }
    
    closeFPC_informManual();

  }
  if (closetype == "nopromote") {

    // Closes nomination as no promote
    FPCpage = FPCpage.replace(/<!-- additional votes go above this line  -->\n/, "<!-- additional votes go above this line  -->\n{"+"{FPCresult|Tidak Dipromosikan| }} --~~"+"~~"+reason+"\n");
    closeFPC_editPage(closeFPC_PageName, FPCpage, token, "Closed, not promoted");

  }

  // Moves transclusion to 'recently closed' section of WP:FPC
  var closeFPC_FPC = "Wikipedia:Calon gambar pilihan";
  var FPClist = closeFPC_getPageText(closeFPC_FPC);
  var PageName_underscore = PageName_actual.replace(/ /g,'_');
  FPClist = FPClist.replace('{{' + closeFPC_PageName + '}}\n', '');
  FPClist = FPClist.replace('{{' + wgPageName + '}}\n', '');
  FPClist = FPClist.replace('{{Wikipedia:Calon gambar pilihan/' + PageName_underscore + '}}\n', '');
  FPClist = FPClist.replace(/<!-- ↓ Di bawah baris ini, ya? \(terbaru di bahagian atas\) ↓ -->/,"<!-- ↓ Di bawah baris ini, ya? (terbaru di bahagian atas) ↓ -->\n{{"+closeFPC_PageName+"}}");
  if (closetype == "promote") {
    closeFPC_editPage(closeFPC_FPC, FPClist, token, "Ditutup [["+closeFPC_PageName+"]] (Dipromosikan)");
  }
  if (closetype == "nopromote") {
    closeFPC_editPage(closeFPC_FPC, FPClist, token, "Ditutup [["+closeFPC_PageName+"]] (Tidak dipromosikan)");
  }

  // Archives nomination
  var closeFPC_log = "Wikipedia:Calon gambar pilihan/"+month+"-"+year;
  var FPClog = closeFPC_getPageText(closeFPC_log);
  if (FPClog == "undefined") {
    FPClog = "{"+"{FPCArchiveBar}}\n<!-- Penyertaan baru di paling bawah -->\n{"+"{"+closeFPC_PageName+"}}";
  }
  else {
    FPClog = FPClog+"\n{"+"{"+closeFPC_PageName+"}}";
  }
  closeFPC_editPage(closeFPC_log, FPClog, token, "Mengarkib "+FPClink);

  document.getElementById('closeFPC_finished_main').style.display = '';
}

function closeFPC_getPageText(title) {
  document.getElementById('closeFPC_status').innerHTML += '<li id="closeFPC_get'+escape(title)+'">Mendapatkan <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a></li>';
  var req = sajax_init_object();
  req.open("GET", wgScriptPath + "/api.php?action=query&prop=revisions&rvprop=content&format=json&indexpageids=1&titles="+encodeURIComponent(title), false);
  req.send(null);
  var response = eval('(' + req.responseText + ')');
  pageid = response['query']['pageids'][0];
  if (pageid == "-1") {
    document.getElementById('closeFPC_get'+escape(title)).innerHTML = '<a class="new" href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a> tidak wujud';
    delete req;
    return '';
  }
  pagetext = response['query']['pages'][pageid]['revisions'][0]['*'];
  delete req;
  document.getElementById('closeFPC_get'+escape(title)).innerHTML = 'Dapat <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a>';
  return pagetext;
}

var FPtitle = "Wikipedia:Gambar pilihan";
function closeFPC_informManual() {
  document.getElementById('closeFPC_status').innerHTML += '<li id="closeFPC_manual">*** Anda mesti membuat penyuntingan secara manual ke sub-halaman <a href="/wiki/'+encodeURI(FPtitle)+'" FPtitle="'+FPtitle+'">'+FPtitle+'</a> yang betul ***</li>';
}

function closeFPC_getToken(show) {
  if (show) {
    document.getElementById('closeFPC_status').innerHTML += '<li id="closeFPC_gettoken">Mendapatkan token</li>';
  }
  var req = sajax_init_object();
  req.open("GET", wgScriptPath + "/api.php?action=query&prop=info&indexpageids=1&intoken=edit&format=json&titles="+encodeURIComponent(closeFPC_PageName), false);
  req.send(null);
  var response = eval('(' + req.responseText + ')');
  pageid = response['query']['pageids'][0];
  token = response['query']['pages'][pageid]['edittoken'];
  delete req;
  if (show) {
    document.getElementById('closeFPC_gettoken').innerHTML = 'Dapat token';
  }
  return token;
}

function closeFPC_editPage(title, newtext, token, summary) {
  document.getElementById('closeFPC_finished_wrapper').innerHTML = '<span id="closeFPC_AJAX_finished_'+closeFPC_AJAXnumber+'" style="display:none">' + document.getElementById('closeFPC_finished_wrapper').innerHTML + '</span>';
  var func_id = closeFPC_AJAXnumber;
  closeFPC_AJAXnumber++;
  document.getElementById('closeFPC_status').innerHTML += '<li id="closeFPC_edit'+escape(title)+'">Menyunting <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a></li>';
  var req = sajax_init_object();
  var params = "action=edit&format=json&token="+encodeURIComponent(token)+"&title="+encodeURIComponent(title)+"&text="+encodeURIComponent(newtext)+"&notminor=1&summary="+encodeURIComponent(summary);
  url = wgScriptPath + "/api.php";
  req.open("POST", url, true);
  req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  req.setRequestHeader("Content-length", params.length);
  req.setRequestHeader("Connection", "close");
  req.onreadystatechange = function() {
    if(req.readyState == 4 && req.status == 200) {
      response = eval('(' + req.responseText + ')');
      try {
        if (response['edit']['result'] == "Success") {
          document.getElementById('closeFPC_edit'+escape(title)).innerHTML = 'Disimpan <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a>';
        } else {
          document.getElementById('closeFPC_edit'+escape(title)).innerHTML = '<div style="color:red"><b>Edit failed on <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a></b></div>. Info ralat:' +response['error']['code'] + ' : ' + response['error']['info'];
        }
      }
      catch(err) {
          document.getElementById('closeFPC_edit'+escape(title)).innerHTML = '<div style="color:red"><b>Suntingan gagal di <a href="/wiki/'+encodeURI(title)+'" title="'+title+'">'+title+'</a></b></div>';
      }
      document.getElementById('closeFPC_AJAX_finished_'+func_id).style.display = '';
      delete req;
    }
  }
  req.send(params)
}

function closeFPC_addLink() {
  mw.util.addPortletLink("p-cactions", "javascript:closeFPC_init()", "Tutup CGP", "ca-closeFPC", "Tutup CGP");
}

$(closeFPC_addLink);
}