User
Difference between revisions of "Yug/common.js"
< User:Yug
Tag: Undo |
|||
Line 15: | Line 15: | ||
(function() { | (function() { | ||
− | + | var entityId = "Q170146"; // Your Wikidata entity ID (QID) | |
− | + | var propertyId = "P4"; // Property ID (P4) | |
− | + | var newValue = "Q359"; // Value to set (Q359) | |
− | var | ||
− | |||
− | |||
− | var | ||
− | |||
− | |||
− | |||
// Fetch current data | // Fetch current data | ||
− | fetch("https://lingualibre.org/api?action=wbgetentities&format=json& | + | fetch("https://lingualibre.org/api?action=wbgetentities&format=json&ids=" + entityId) |
− | + | .then(function(response) { | |
return response.json(); | return response.json(); | ||
}) | }) | ||
Line 42: | Line 35: | ||
value: { | value: { | ||
"entity-type": "item", | "entity-type": "item", | ||
− | "numeric-id": newValue.replace("Q", "") | + | "numeric-id": newValue.replace("Q", "359") |
}, | }, | ||
type: "wikibase-entityid" | type: "wikibase-entityid" |
Revision as of 14:43, 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
// @namespace https://example.com
// @version 1.0
// @description Edit a Wikidata page
// @include https://www.wikidata.org/wiki/Q*
// @grant none
// ==/UserScript==
(function() {
var entityId = "Q170146"; // Your Wikidata entity ID (QID)
var propertyId = "P4"; // Property ID (P4)
var newValue = "Q359"; // Value to set (Q359)
// Fetch current data
fetch("https://lingualibre.org/api?action=wbgetentities&format=json&ids=" + entityId)
.then(function(response) {
return response.json();
})
.then(function(data) {
if (data.success) {
// Modify data
data.entities[entityId].claims[propertyId] = [
{
mainsnak: {
snaktype: "value",
property: propertyId,
datavalue: {
value: {
"entity-type": "item",
"numeric-id": newValue.replace("Q", "359")
},
type: "wikibase-entityid"
}
},
rank: "normal",
references: [],
}
];
// Submit changes
fetch("https://lingualibre.org/api?action=wbeditentity&format=json", {
method: "POST",
body: JSON.stringify({
id: entityId,
data: JSON.stringify(data.entities[entityId]),
summary: "Updating property P4",
}),
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
})
.then(function(response) {
return response.json();
})
.then(function(responseData) {
console.log("Edit response:", responseData);
})
.catch(function(error) {
console.error("An error occurred:", error);
});
}
})
.catch(function(error) {
console.error("An error occurred:", error);
});
})();