User:Utcursch/Migrate Infobox Indian Jurisdiction to Infobox settlement/main.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
![]() | Documentation for this user script can be added at User:Utcursch/Migrate Infobox Indian Jurisdiction to Infobox settlement/main. |
/**
* A quick-and-dirty solution to migrate the Infobox Indian Jurisdiction to Infobox settlement
*
* @author User:Utcursch
*/
// for coord
var latd = "";
var latm = "";
var lats = "";
var longd = "";
var longm = "";
var longs = "";
/**
* Replaces Infobox Indian Jurisdiction (if found) with Infobox settlement
*/
migrateIIJ.migrateInfoboxIJ = function () {
// regular expression to parse Infobox Indian Jurisdiction
var regex = /{{Infobox Indian Jurisdiction[^{]*?({{[^}]*?}}[\s\S]*?)*}}/gmi
// regular expression to parse coord template
var regex_coord = /{{coord[^{]*?({{[^}]*?}}[\s\S]*?)*}}/gmi
// get the article content
var orig_article_text = document.getElementById("wpTextbox1").value;
// extract latitude and longitude information from the coord template
var arr_coord_text = orig_article_text.match(regex_coord);
// coord found
if (arr_coord_text != null) {
// get coord text
var coord_text = arr_coord_text[0];
var coord_params = coord_text.split("|");
if (coord_params[2] == "N") {
// {{Coord|44.112|N|91|E|display=title}}
latd = coord_params[1];
longd = coord_params[3];
} else if (coord_params[3] == "N") {
// {{coord|26|10|10|N|91|34|21|E|type:landmark_source:kolossus-itwiki|display=title}}
latd = coord_params[1];
latm = coord_params[2];
longd = coord_params[4];
longm = coord_params[5];
} else {
// {{coord|26|10|10|N|91|34|21|E|type:landmark_source:kolossus-itwiki|display=title}}
latd = coord_params[1];
latm = coord_params[2];
lats = coord_params[3];
longd = coord_params[5];
longm = coord_params[6];
longs = coord_params[7];
}
// replace original infobox with the new one
orig_article_text = orig_article_text.replace(regex_coord, "");
}
// rm unnecessary line
orig_article_text = orig_article_text.replace("<!-- See [[Wikipedia:WikiProject Indian cities]] for details -->", "");
// get the infobox text
var arr_infobox_text = orig_article_text.match(regex);
// Infobox Indian Jurisdiction not found
if (arr_infobox_text == null) {
return;
}
// get infobox text
var infobox_text = arr_infobox_text[0];
// parse original infobox
orig_infobox_params = migrateIIJ.parseInfobox(infobox_text);
// create Infobox settlement
var new_infobox_text = migrateIIJ.prepareInfoboxSettlement(orig_infobox_params);
// replace original infobox with the new one
var new_article_text = orig_article_text.replace(regex, new_infobox_text);
// Insert Infobox settlement
document.getElementById("wpTextbox1").value = new_article_text;
// Provide an edit summary
var summary = "converted"
if (document.getElementById("wpSummary")) {
document.getElementById("wpSummary").value = "[[User:Utcursch/Migrate Infobox Indian Jurisdiction to Infobox settlement|Migrated Infobox Indian Jurisdiction to Infobox settlement]]";
}
if (document.getElementById("wpMinoredit")) {
document.getElementById("wpMinoredit").checked = true;
}
}
/**
* Parse the infobox string to extract parameter-value pairs
*
* @param infobox_text the infobox string
* {{Infobox Indian Jurisdiction ... }}
*
* @return an object contaning the infobox parameters and values
* orig_infobox_params["parameter"] = "value"
*/
migrateIIJ.parseInfobox = function(infobox_text) {
// to store
var temp_param_arr = [];
var paramRegexp = /\s*\|[^{}|]*?((?:{{[^{}]*}}|\[?\[[^[\]]*\]?\])?[^[\]{}|]*)*/g;
// an array of all the parameter key-value pairs
var temp_param_arr = infobox_text.match(paramRegexp);
if (!temp_param_arr) {
return;
}
var orig_infobox_params = {};
// for each parameter key-value pair
for (var i = 0; i < temp_param_arr.length; i++) {
// something like "nickname = foo<ref>{{cite web | url = x | title = y }}"
// the regex turns "|nickname = xyz" into "nickname = xyz"
var key_value_str = temp_param_arr[i].replace(/^\s*\|/,"");
// something like "| nickname = foo<ref>{{cite web | url = x | title = y }}"
key_value_str = key_value_str
// the index of "=" in the key value string
var index_eq = key_value_str.indexOf("=");
// something like "nickname"
var key = key_value_str.substr(0, index_eq).trim();
// something like "foo<ref>{{cite web | url = x | title = y }}"
var value = key_value_str.substr(index_eq + 1).trim();
orig_infobox_params[key] = value;
}
return orig_infobox_params;
}
/**
* Build the Infobox settlement string
*
* @return an object contaning the Infobox settlement parameters and values
* (orig_infobox_params["parameter"] = "value"
*/
migrateIIJ.prepareInfoboxSettlement = function (orig_infobox_params) {
// state name
var state_name = orig_infobox_params["state_name"] ? orig_infobox_params["state_name"] : "";
// strip [[]], if any
state_name = state_name.replace("[[", "");
state_name = state_name.replace("]]", "");
// Location map
var pushpin_map = "India";
var pushpin_map_caption = "India";
// don't have location map templates for these
// http://en.wikipedia.org/wiki/Category:India_location_map_templates
var states_with_no_map = {
"Lakshadweep" : 1,
"Chandigarh" : 1,
"Daman and Diu" : 1,
"Daman & Diu" : 1
};
if (state_name != "" && (! states_with_no_map[state_name]) ) {
pushpin_map = "India " + state_name;
pushpin_map_caption = state_name + ", India";
}
if (state_name == "Punjab, India" ) {
// don't want "India Punjab, India"
pushpin_map = "India Punjab";
pushpin_map_caption = "Punjab, India";
}
// these cities have a location map template -- use it as the pushpin_map
var metros_with_map = {
"Bangalore" : 1,
"Bengaluru" : 1,
"Bhopal" : 1,
"Chennai" : 1,
"Delhi" : 1,
"Kochi" : 1,
"Mumbai" : 1,
"Tiruchirapalli" : 1
}
if (orig_infobox_params["metro"] && metros_with_map[orig_infobox_params["metro"]] ) {
pushpin_map = "India " + orig_infobox_params["metro"];
pushpin_map_caption = orig_infobox_params["metro"] + ", India";
}
// Governing body
var governing_body = "";
if (orig_infobox_params["civic_agency"]) {
governing_body = orig_infobox_params["civic_agency"];
} else if (orig_infobox_params["planning_agency"]) {
governing_body = orig_infobox_params["planning_agency"];
}
// make list of subdivisions
var subdivisions = [];
if (state_name != "") {
subdivisions["[[States and territories of India|State]]"] = "[[" + state_name + "]]";
}
// display "Punjab" instead of "Punjab, India" (India is already displayed a line above)
// also, link to "Punjab, India", if the state name is "Punjab"
if (state_name == "Punjab, India" || state_name == "Punjab") {
subdivisions["[[States and territories of India|State]]"] = "[[Punjab, India|Punjab]]";
}
if (orig_infobox_params["region"]) {
subdivisions["[[List of regions of India|Region]]"] = orig_infobox_params["region"];
}
if (orig_infobox_params["division"]) {
subdivisions["Division"] = orig_infobox_params["division"];
}
if (orig_infobox_params["district"]) {
subdivisions["[[List of districts of India|District]]"] = orig_infobox_params["district"];
}
if (orig_infobox_params["metro"]) {
subdivisions["Metro"] = orig_infobox_params["metro"];
}
if (orig_infobox_params["corp_zone"]) {
subdivisions["Zone"] = orig_infobox_params["corp_zone"];
}
if (orig_infobox_params["corp_ward"]) {
subdivisions["Ward"] = orig_infobox_params["corp_ward"];
}
for (var i = 1; i <= 3; i++ ) {
if (orig_infobox_params["jurisdiction_title_" + i]) {
var title = orig_infobox_params["jurisdiction_title_" + i];
subdivisions[title] = orig_infobox_params["jurisdiction_name_" + i];
}
}
// make list of languages
var languages = [];
if (orig_infobox_params["official_languages"]) {
languages["Official"] = orig_infobox_params["official_languages"];
} else {
if (state_name != "") {
languages["Official"] = getOfficialLanguage(state_name);
}
}
if (orig_infobox_params["regional_languages"]) {
languages["Regional"] = orig_infobox_params["regional_languages"];
}
if (orig_infobox_params["languages"]) {
var title = "Other";
if (orig_infobox_params["languages_type"]) {
title = orig_infobox_params["languages_type"];
}
languages[title] = orig_infobox_params["languages"];
}
// make list of other information
var other_info = [];
if (orig_infobox_params["districts"]) {
other_info["No. of districts"] = orig_infobox_params["districts"];
}
if (orig_infobox_params["coastline"]) {
other_info["Coastline"] = "{{Convert|" + orig_infobox_params["coastline"] + "|km|mi}}";
}
if (orig_infobox_params["coastline"]) {
other_info["Coastline"] = "{{Convert|" + orig_infobox_params["coastline"] + "|km|mi}}";
}
if (orig_infobox_params["largest_city"]) {
other_info["Largest city"] = orig_infobox_params["largest_city"];
}
if (orig_infobox_params["largest_metro"]) {
other_info["Largest metro"] = orig_infobox_params["largest_metro"];
}
if (orig_infobox_params["nearest_city"]) {
other_info["Nearest city"] = orig_infobox_params["nearest_city"];
}
if (orig_infobox_params["sex_ratio"]) {
other_info["[[Human sex ratio|Sex ratio]]"] = orig_infobox_params["sex_ratio"] + " [[male|♂]]/[[female|♀]]";
}
if (orig_infobox_params["HDI"]) {
other_info["HDI"] = orig_infobox_params["HDI"];
if (orig_infobox_params["HDI_rank"]) {
other_info["HDI Rank"] = orig_infobox_params["HDI_rank"];
}
if (orig_infobox_params["HDI_year"]) {
other_info["HDI Year"] = orig_infobox_params["HDI_year"];
}
if (orig_infobox_params["HDI_category"]) {
other_info["HDI Category"] = orig_infobox_params["HDI_category"];
}
}
if (orig_infobox_params["literacy"]) {
other_info["Literacy"] = orig_infobox_params["literacy"] + "%";
}
if (orig_infobox_params["x"]) {
other_info["Literacy rank"] = orig_infobox_params["literacy_rank"];
}
if (orig_infobox_params["x"]) {
other_info["Male literacy"] = orig_infobox_params["literacy_male"];
}
if (orig_infobox_params["x"]) {
other_info["Female literacy"] = orig_infobox_params["literacy_female"];
}
if (orig_infobox_params["legislature_type"]) {
other_info["Legislature type"] = orig_infobox_params["legislature_type"];
}
if (orig_infobox_params["legislature_strength"]) {
other_info["Legislature Strength"] = orig_infobox_params["legislature_strength"];
}
if (orig_infobox_params["parliament_const"]) {
other_info["[[Lok Sabha]] constituency"] = orig_infobox_params["parliament_const"];
}
if (orig_infobox_params["assembly_const"]) {
other_info["[[Vidhan Sabha]] constituency"] = orig_infobox_params["assembly_const"];
}
if (orig_infobox_params["planning_agency"]) {
other_info["[[Urban planning|Planning]] agency"] = orig_infobox_params["planning_agency"];
}
if (orig_infobox_params["civic_agency"]) {
other_info["Civic agency"] = orig_infobox_params["civic_agency"];
}
if (orig_infobox_params["iucn_category"]) {
other_info["[[IUCN protected area categories|IUCN category]]"] = orig_infobox_params["iucn_category"];
}
for (var i = 1; i <= 4; i++ ) {
if (orig_infobox_params["destination_" + i]) {
var distance_title = "Distance from " + orig_infobox_params["destination_" + i];
var distance_value = "";
if (orig_infobox_params["distance_" + i]) {
distance_value += ("{{convert|" + orig_infobox_params["distance_" + i] + "|km|mi}}");
}
if (orig_infobox_params["direction_" + i]) {
distance_value += (" " + orig_infobox_params["direction_" + i]);
}
if (orig_infobox_params["mode_" + i]) {
distance_value += (" (" + orig_infobox_params["mode_" + i] + ")");
}
other_info[distance_title] = distance_value;
}
}
for (var i = 1; i <= 4; i++ ) {
if (orig_infobox_params["blank_title_" + i]) {
var title = orig_infobox_params["blank_title_" + i];
other_info[title] = orig_infobox_params["blank_value_" + i];
}
}
// make list of climate information
var climate = [];
if (orig_infobox_params["climate"]) {
climate["[[Climate of India|Climate]]"] = "[[Climatic regions of India|" + orig_infobox_params["climate"] + "]] <small>([[Köppen climate classification|Köppen]])</small>";
}
if (orig_infobox_params["precip"]) {
climate["[[Precipitation (meteorology)|Precipitation]]"] = "{{convert|" + orig_infobox_params["precip"] + "|mm|in}}";
}
if (orig_infobox_params["temp_annual"]) {
climate["Avg. annual temperature"] = "{{convert|" + orig_infobox_params["temp_annual"] + "|°C|°F}}";
}
if (orig_infobox_params["temp_summer"]) {
climate["Avg. summer temperature"] = "{{convert|" + orig_infobox_params["temp_summer"] + "|°C|°F}}";
}
if (orig_infobox_params["temp_winter"]) {
climate["Avg. winter temperature"] = "{{convert|" + orig_infobox_params["temp_winter"] + "|°C|°F}}";
}
var page_name = wgPageName.replace(/_/g, " ");
var native_name = "";
if (orig_infobox_params["native_name"] && (orig_infobox_params["native_name"] != page_name)) {
native_name = orig_infobox_params["native_name"];
}
var new_infobox_str =
"{{Infobox settlement" + "\n" +
"| name = " + page_name + "\n" +
"| native_name = " + native_name + "\n" +
"| native_name_lang = " + (orig_infobox_params["native_name_lang"] ? orig_infobox_params["native_name_lang"] : "") + "\n" +
"| other_name = " + (orig_infobox_params["other_name"] ? orig_infobox_params["other_name"] : "") + "\n" +
"| nickname = " + (orig_infobox_params["nickname"] ? orig_infobox_params["nickname"] : "") + "\n" +
"| settlement_type = " + (orig_infobox_params["type"] ? orig_infobox_params["type"] : "") + "\n" +
"| image_skyline = " + (orig_infobox_params["skyline"] ? orig_infobox_params["skyline"] : "") + "\n" +
"| image_alt = " + (orig_infobox_params["skyline_alt"] ? orig_infobox_params["skyline_alt"] : "") + "\n" +
"| image_caption = " + (orig_infobox_params["skyline_caption"] ? orig_infobox_params["skyline_caption"] : "") + "\n";
if (orig_infobox_params["image_flag"]) {
new_infobox_str +=
"| image_flag = " + orig_infobox_params["image_flag"] + "\n" +
"| flag_size = " + (orig_infobox_params["flag_size"] ? orig_infobox_params["flag_size"] : "") + "\n" +
"| flag_alt = " + (orig_infobox_params["flag_alt"] ? orig_infobox_params["flag_alt"] : "") + "\n";
}
if (orig_infobox_params["image_seal"]) {
new_infobox_str +=
"| image_seal = " + orig_infobox_params["image_seal"] + "\n" +
"| seal_size = " + (orig_infobox_params["seal_size"] ? orig_infobox_params["seal_size"] : "") + "\n" +
"| seal_alt = " + (orig_infobox_params["seal_alt"] ? orig_infobox_params["seal_alt"] : "") + "\n";
}
if (orig_infobox_params["base_map"]) {
new_infobox_str +=
"| image_map = " + (orig_infobox_params["base_map"] ? orig_infobox_params["base_map"] : "") + "\n" +
"| map_alt = " + (orig_infobox_params["base_map_alt"] ? orig_infobox_params["base_map_alt"] : "") + "\n" +
"| map_caption = " + (orig_infobox_params["map_caption"] ? orig_infobox_params["map_caption"] : "") + "\n";
}
new_infobox_str +=
"| pushpin_map = " + ((orig_infobox_params["latd"] || latd) ? pushpin_map : ("<!--" + pushpin_map + "-->")) + "\n" +
"| pushpin_label_position = " + (orig_infobox_params["locator_position"] ? orig_infobox_params["locator_position"] : "") + "\n" +
"| pushpin_map_alt = " + "\n" +
"| pushpin_map_caption = " + (orig_infobox_params["pushpin_map_caption"] ? orig_infobox_params["pushpin_map_caption"] : ("Location in " + pushpin_map_caption)) + "\n" +
"| latd = " + (orig_infobox_params["latd"] ? orig_infobox_params["latd"] : latd) + "\n" +
"| latm = " + (orig_infobox_params["latm"] ? orig_infobox_params["latm"] : latm) + "\n" +
"| lats = " + (orig_infobox_params["lats"] ? orig_infobox_params["lats"] : lats) + "\n" +
"| latNS = " + "N\n" +
"| longd = " + (orig_infobox_params["longd"] ? orig_infobox_params["longd"] : longd) + "\n" +
"| longm = " + (orig_infobox_params["longm"] ? orig_infobox_params["longm"] : longm) + "\n" +
"| longs = " + (orig_infobox_params["longs"] ? orig_infobox_params["longs"] : longs) + "\n" +
"| longEW = " + "E\n" +
/*
"| coor_pinpoint = " + "\n" +
"| coordinates_type = " + "\n" +
*/
"| coordinates_display = inline,title" + "\n" +
/*
"| coordinates_footnotes = " + "\n" +
*/
"| subdivision_type = Country" + "\n" +
"| subdivision_name = " + "{{flag|India}}\n";
var n_subdiv = 1; // number of subdivisions
for (var title in subdivisions) {
new_infobox_str += (
"| subdivision_type" + n_subdiv + " = " + title + "\n" +
"| subdivision_name" + n_subdiv + " = " + subdivisions[title] + "\n"
);
n_subdiv++;
}
new_infobox_str +=
"| established_title = " + (orig_infobox_params["established_title"] ? orig_infobox_params["established_title"] : (orig_infobox_params["established_date"] ? "Established" : "<!-- Established -->")) + "\n" +
"| established_date = " + (orig_infobox_params["established_date"] ? orig_infobox_params["established_date"] : "") + "\n" +
"| founder = " + "\n" +
"| named_for = " + "\n";
if (orig_infobox_params["taluk_names"]) {
new_infobox_str +=
"| parts_type = [[Taluka]]s" + "\n" +
"| parts = " + orig_infobox_params["taluk_names"] + "\n";
}
if (orig_infobox_params["capital"]) {
new_infobox_str +=
"| seat_type = Capital" + "\n" +
"| seat = " + orig_infobox_params["capital"] + "\n";
}
if (orig_infobox_params["hq"]) {
new_infobox_str +=
"| seat_type = Headquarters" + "\n" +
"| seat = " + orig_infobox_params["hq"] + "\n";
}
new_infobox_str +=
"| government_type = " + "\n" +
"| governing_body = " + governing_body + "\n";
if (orig_infobox_params["leader_title"]) {
new_infobox_str +=
"| leader_title = " + orig_infobox_params["leader_title"] + "\n" +
"| leader_name = " + (orig_infobox_params["leader_name"] ? orig_infobox_params["leader_name"] : "") + "\n";
}
for (var i = 1; i <= 3; i++) {
if (orig_infobox_params["leader_title_" + i]) {
new_infobox_str +=
"| leader_title" + i + " = " + orig_infobox_params["leader_title_" + i] + "\n" +
"| leader_name" + i + " = " + (orig_infobox_params["leader_name_" + i] ? orig_infobox_params["leader_name_" + i] : "") + "\n";
}
}
new_infobox_str +=
"| unit_pref = Metric" + "\n" +
"| area_footnotes = " + (orig_infobox_params["area_total_cite"] ? orig_infobox_params["area_total_cite"] : "") + "\n" +
/*
"| area_urban_footnotes = " + "\n" +
"| area_rural_footnotes = " + "\n" +
"| area_metro_footnotes = " + "\n" +
"| area_magnitude = " + "\n" +
"| area_water_percent = " + "\n" +
*/
"| area_rank = " + (orig_infobox_params["area_rank"] ? orig_infobox_params["area_rank"] : "") + "\n" +
"| area_total_km2 = " + (orig_infobox_params["area_total"] ? orig_infobox_params["area_total"] : "") + "\n" + //TODO: not necessarily km2 in the original
/*
"| area_land_km2 = " + "\n" +
"| area_water_km2 = " + "\n" +
"| area_urban_km2 = " + "\n" +
"| area_rural_km2 = " + "\n" +
"| area_metro_km2 = " + "\n" +
"| dimensions_footnotes = " + "\n" +
*/
"| elevation_footnotes = " + (orig_infobox_params["altitude_cite"] ? orig_infobox_params["altitude_cite"] : "") + "\n" +
"| elevation_m = " + (orig_infobox_params["altitude"] ? orig_infobox_params["altitude"] : "") + "\n" + // TODO: not necessarily m in the original
"| population_total = " + (orig_infobox_params["population_total"] ? orig_infobox_params["population_total"] : "") + "\n" +
"| population_as_of = " + (orig_infobox_params["population_as_of"] ? orig_infobox_params["population_as_of"] : "") + "\n" +
"| population_rank = " + (orig_infobox_params["population_rank"] ? orig_infobox_params["population_rank"] : "") + "\n" +
"| population_density_km2 = " + (orig_infobox_params["population_density"] ? orig_infobox_params["population_density"] : "auto") + "\n"; // TODO: not necessarily km2 in the original
if (orig_infobox_params["population_metro"]) {
new_infobox_str +=
"| population_metro = " + (orig_infobox_params["population_metro"] ? orig_infobox_params["population_metro"] : "") + "\n" +
"| population_metro_footnotes = " + (orig_infobox_params["population_metro_cite"] ? orig_infobox_params["population_metro_cite"] : "") + "\n"
}
new_infobox_str +=
"| population_demonym = " + "\n" +
"| population_footnotes = " + (orig_infobox_params["population_total_cite"] ? orig_infobox_params["population_total_cite"] : "") + "\n" +
"| demographics_type1 = " + "Languages\n";
var n_lang = 1; // number of languages
for (var title in languages) {
new_infobox_str += (
"| demographics1_title" + n_lang + " = " + title + "\n" +
"| demographics1_info" + n_lang + " = " + languages[title] + "\n"
);
n_lang++;
}
if (orig_infobox_params["ethnic_groups"]) {
new_infobox_str +=
"| demographics_type2 = " + "Ethnicity\n" +
"| demographics2_title1 = " + "Ethnic groups\n" +
"| demographics2_info1 = " + orig_infobox_params["ethnic_groups"] + "\n" +
"| demographics2_title2 = " + "Year of data\n" +
"| demographics2_info2 = " + (orig_infobox_params["ethnic_groups_year"] ? orig_infobox_params["ethnic_groups_year"] : "") + "\n";
}
new_infobox_str +=
"| timezone1 = " + "[[Indian Standard Time|IST]]\n" +
"| utc_offset1 = " + "+5:30\n" +
"| postal_code_type = " + (orig_infobox_params["postal_code"] ? "[[Postal Index Number|PIN]]" : "<!-- [[Postal Index Number|PIN]] -->") + "\n" +
"| postal_code = " + (orig_infobox_params["postal_code"] ? orig_infobox_params["postal_code"] : "") + "\n";
if (orig_infobox_params["area_telephone"]) {
new_infobox_str +=
"| area_code_type = " + "Telephone code\n" +
"| area_code = " + (orig_infobox_params["area_telephone"] ? orig_infobox_params["area_telephone"] : "") + "\n";
}
if (orig_infobox_params["abbreviation"]) {
new_infobox_str +=
"| iso_code = " + (orig_infobox_params["abbreviation"] ? "[[ISO 3166-2:IN|" + orig_infobox_params["abbreviation"] + "]]" : "") + "\n";
}
new_infobox_str +=
"| registration_plate = " + (orig_infobox_params["vehicle_code_range"] ? orig_infobox_params["vehicle_code_range"] : "") + "\n";
var n_other = 1; // number of other_info items
for (var title in other_info) {
new_infobox_str += (
"| blank" + (n_other == 0 ? "": n_other) + "_name_sec1 = " + title + "\n" +
"| blank" + (n_other == 0 ? "": n_other) + "_info_sec1 = " + other_info[title] + "\n"
);
n_other++;
}
var n_climate = 1; // number of climate items
for (var title in climate) {
new_infobox_str += (
"| blank" + (n_climate == 0 ? "": n_climate) + "_name_sec2 = " + title + "\n" +
"| blank" + (n_climate == 0 ? "": n_climate) + "_info_sec2 = " + climate[title] + "\n"
);
n_climate++;
}
new_infobox_str +=
"| website = " + (orig_infobox_params["website"] ? ("{{URL|" + orig_infobox_params["website"] + "}}") : "") + "\n" +
"| footnotes = " + (orig_infobox_params["footnotes"] ? orig_infobox_params["footnotes"] : "") + "\n" +
"}}";
return new_infobox_str;
}
/**
* Return the official language of the state/UT
* @param the name of the state/UT
* @return the official lanugage of the state, blank if no match found
*/
var getOfficialLanguage = function (state_name) {
var languages = {
"Andhra Pradesh" : "[[Telugu language|Telugu]]",
"Arunachal Pradesh" : "[[English language|English]]",
"Assam" : "[[Assamese language|Assamese]]",
"Bihar" : "[[Maithili language|Maithili]], [[Hindi language|Hindi]]",
"Chhattisgarh" : "[[Hindi language|Hindi]], [[Chhattisgarhi language|Chhattisgarhi]]",
"Goa" : "[[Konkani language|Konkani]]",
"Gujarat" : "[[Gujarati language|Gujarati]], [[Hindi language|Hindi]]",
"Haryana" : "[[Hindi language|Hindi]]",
"Himachal Pradesh" : "[[Hindi language|Hindi]]",
"Jammu and Kashmir" : "[[Urdu]]",
"Jammu & Kashmir" : "[[Urdu]]",
"Jharkhand" : "[[Hindi language|Hindi]], [[Santali language|Santali]]",
"Karnataka" : "[[Kannada]]",
"Kerala" : "[[Malayalam language|Malayalam]], [[English language|English]]",
"Madhya Pradesh" : "[[Hindi language|Hindi]]",
"Maharashtra" : "[[Marathi language|Marathi]]",
"Manipur" : "[[Meiteilon]] (Manipuri)",
"Meghalaya" : "[[English language|English]]",
"Mizoram" : "[[Mizo language|Mizo]]",
"Nagaland" : "[[English language|English]]",
"Orissa" : "[[Oriya language|Oriya]]",
"Odisha" : "[[Oriya language|Oriya]]",
"Punjab" : "[[Punjabi language|Punjabi]]",
"Punjab, India" : "[[Punjabi language|Punjabi]]",
"Rajasthan" : "[[Hindi language|Hindi]]",
"Sikkim" : "[[Nepali language|Nepali]], [[Bhutia language|Bhutia]], [[Lepcha language|Lepcha]], [[Limbu language|Limbu]], [[Newari language|Newari]], [[Kiranti languages|Rai]], [[Gurung language|Gurung]], Mangar, [[Sherpa language|Sherpa]], [[Tamang language|Tamang]] and [[Sunwar language|Sunwar]]",
"Tamil Nadu" : "[[Tamil language|Tamil]]",
"Tripura" : "[[Bengali language|Bengali]], [[Kokborok language|Kokborok]], [[English language|English]]",
"Uttarakhand" : "[[Hindi language|Hindi]]",
"Uttar Pradesh" : "[[Hindi language|Hindi]]",
"West Bengal" : "[[Bengali language|Bengali]], [[English language|English]]",
"Andaman and Nicobar Islands" : "[[Hindi language|Hindi]], [[English language|English]], [[Tamil language|Tamil]]",
"Andaman and Nicobar" : "[[Hindi language|Hindi]], [[English language|English]], [[Tamil language|Tamil]]",
"Andaman & Nicobar Islands" : "[[Hindi language|Hindi]], [[English language|English]], [[Tamil language|Tamil]]",
"Andaman & Nicobar" : "[[Hindi language|Hindi]], [[English language|English]], [[Tamil language|Tamil]]",
"Chandigarh" : "[[Punjabi language|Punjabi]], [[Hindi language|Hindi]], [[English language|English]]",
"Dadra and Nagar Haveli" : "[[Marathi language|Marathi]], [[Gujarati language|Gujarati]]",
"Dadra & Nagar Haveli" : "[[Marathi language|Marathi]], [[Gujarati language|Gujarati]]",
"Daman and Diu" : "[[Gujarati language|Gujarati]], [[English language|English]]",
"Daman & Diu" : "[[Gujarati language|Gujarati]], [[English language|English]]",
"Delhi" : "[[Hindi language|Hindi]], [[English language|English]]",
"Lakshadweep" : "[[Malayalam language|Malayalam]]",
"Pondicherry" : "[[French language|French]], [[Tamil language|Tamil]], [[English language|English]]",
"Puducherry" : "[[French language|French]], [[Tamil language|Tamil]], [[English language|English]]"
};
if (languages[state_name]) {
return languages[state_name];
}
return "";
}
/**
* initialize the program
*/
migrateIIJ.init = function() {
// the infobox will automatically be migrated whenever the user clicks on "Edit this page"
if (migrateIIJ.auto_replace == true) {
// migrate the infobox
if (wgAction == "edit") {
migrateIIJ.migrateInfoboxIJ();
}
return;
}
// the user has to click on a portlet link to migrate the infobox
var portletLink = mw.util.addPortletLink(
"p-cactions",
"#",
"Infobox Indian Jurisdiction → settlement",
"ca-infobox-settlement",
"Click here to migrate the Infobox Indian Jurisdiction to Infobox settlement"
);
$(portletLink).click(function (e) {
e.preventDefault();
migrateIIJ.migrateInfoboxIJ();
});
};
// bind to page load
addOnloadHook(migrateIIJ.init);