User
Difference between revisions of "Yug/common.js"
< User:Yug
(4 intermediate revisions by the same user not shown) | |||
Line 11: | Line 11: | ||
var newValue = "Q359"; // Value to set (Q359) | var newValue = "Q359"; // Value to set (Q359) | ||
var numericId = Number(newValue.replace("Q", "")); | var numericId = Number(newValue.replace("Q", "")); | ||
+ | var csrfToken = mw.user.tokens.get("csrfToken"); | ||
+ | var params = { | ||
+ | action: 'query', | ||
+ | meta: 'tokens', | ||
+ | type: 'csrf', | ||
+ | format: 'json' | ||
+ | }, | ||
+ | api = new mw.Api(); | ||
+ | api.get( params ).done( function ( data ) { | ||
+ | csrfToken = data.query.tokens.csrftoken; | ||
+ | console.log( csrfToken ); | ||
+ | } ); | ||
+ | |||
+ | console.log( "token2", csrfToken ); | ||
+ | |||
// Define the API endpoint | // Define the API endpoint | ||
var apiUrl = "https://lingualibre.org/api.php"; | var apiUrl = "https://lingualibre.org/api.php"; | ||
Line 20: | Line 35: | ||
// Create an object with the data to update | // Create an object with the data to update | ||
var postData = { | var postData = { | ||
− | action: " | + | action: "wbsetclaimvalue", |
format: "json", | format: "json", | ||
+ | snaktype: "value", | ||
claim: JSON.stringify({ | claim: JSON.stringify({ | ||
entity: entityId, | entity: entityId, | ||
Line 28: | Line 44: | ||
value: { | value: { | ||
"entity-type": "item", | "entity-type": "item", | ||
− | + | // "value": numericId , | |
"numeric-id": numericId | "numeric-id": numericId | ||
} | } | ||
}), | }), | ||
summary: editSummary, | summary: editSummary, | ||
− | token: | + | token:csrfToken |
}; | }; | ||
Latest revision as of 16:01, 2 October 2023
// Modules loader, conditional
// Sound library
if(/^User:Elfix\/LinguaLibre:Explore_the_sound_library(\/[a-z_-]+)?$/.test( mw.config.get( 'wgPageName' ) ) ) {
mw.loader.load( '/index.ptitle=User:Elfix/MediaWiki:SoundLibrary.js&action=raw&ctype=text/javascript');
}
// ==UserScript==
// @name Wikidata Editor
var entityId = "Q170146"; // Entity to update (Q170146)
var propertyId = "P4"; // Property to update (P4)
var newValue = "Q359"; // Value to set (Q359)
var numericId = Number(newValue.replace("Q", ""));
var csrfToken = mw.user.tokens.get("csrfToken");
var params = {
action: 'query',
meta: 'tokens',
type: 'csrf',
format: 'json'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
csrfToken = data.query.tokens.csrftoken;
console.log( csrfToken );
} );
console.log( "token2", csrfToken );
// Define the API endpoint
var apiUrl = "https://lingualibre.org/api.php";
// Define the edit summary
var editSummary = "Updating property P4";
// Create an object with the data to update
var postData = {
action: "wbsetclaimvalue",
format: "json",
snaktype: "value",
claim: JSON.stringify({
entity: entityId,
property: propertyId,
snaktype: "value",
value: {
"entity-type": "item",
// "value": numericId ,
"numeric-id": numericId
}
}),
summary: editSummary,
token:csrfToken
};
// Send a POST request to update the item
$.post(apiUrl, postData, function(data) {
if (data.success) {
console.log("Item updated successfully!");
} else {
console.error("Error updating item:", data.error.info);
}
});