יחידה:עיר

פון המכלול
קפיצה לניווט קפיצה לחיפוש

מען קען שאפן דאקומענטאציע פאר דעם מאדול ביי יחידה:עיר/דאק

local hebrewState={
	"[[הארצות הדרומיות והאנטארקטיות של צרפת|טריטוריה]]",
	"[[הברית האנטארקטית|אזור אינטרסים]]",
	"[[הטריטוריות הבריטיות שמעבר לים|טריטוריה]]",
	"[[המדינות והטריטוריות של הודו|מדינה]]",
	"[[הפרובינציות והטריטוריות של קנדה|טריטוריה]]",
	"[[הפרובינציות והטריטוריות של קנדה|פרובינציה]]",
	"[[חלוקה מנהלית של שוודיה#ארצות שוודיה|ארץ היסטורית]]",
	"[[טריטוריה]]",
	"[[טריטוריית איחוד]]",
	"[[טריטוריה פדרלית]]",
	"[[ישויות הממלכה המאוחדת|אומה]]",
	"[[ישויות של הממלכה המאוחדת|אומה]]",
	"[[מדינות אוסטריה|מדינה]]",
	"[[המדינות והטריטוריות של אוסטרליה|טריטוריה]]",
	"[[המדינות והטריטוריות של אוסטרליה|מדינה]]",
	"[[מדינות ארצות הברית|מדינה]]",
	"[[מדינות אתיופיה|מדינה]]",
	"[[מדינות אתיופיה|מדינה]]",
	"[[מדינות ברזיל|מדינה]]",
	"[[פרובינציות איראן|פרובינציה]]",
	"[[מדינות גרמניה|מדינה]]",
	"[[מדינות הודו|מדינה]]",
	"[[מדינות ונצואלה|מדינה]]",
	"[[מחוזות ומדינות מיאנמר|מדינה]]",
	"[[מדינות מלזיה|טריטוריה פדרלית]]",
	"[[מדינות מלזיה|מדינה]]",
	"[[מדינות מקסיקו|מדינה]]",
	"[[מדינות ניגריה|מדינה]]",
	"[[מדינות סודאן|מדינה]]",
	"[[מדינות דרום סודאן|מדינה]]",
	"[[מחוזות דרום סודאן|מחוז לשעבר]]",
	"[[מחוזות דרום סודאן|מחוז]]",
	"[[פרובינציות אירלנד|פרובינציה]]",
	"[[פרובינציות ארגנטינה|פרובינציה]]",
	"[[פרובינציות דרום אפריקה|פרובינציה]]",
	"[[פרובינציות פולין|פרובינציה]]",
	"[[פרובינציות הפיליפינים|פרובינציה]]",
	"[[פרובינציות צ'ילה|פרובינציה]]",
	"[[פרובינציות צרפת|פרובינציה לשעבר]]",
	"[[הקנטונים של לוקסמבורג|קנטון]]",
	"[[רפובליקה אוטונומית]]",
	"[[רפובליקות של רוסיה|רפובליקה]]",
	"|[[אמירויות איחוד האמירויות הערביות|אמירות]]",
	"ארץ היסטורית",
	"מדינה לכאורה",
	"[[מדינה לכאורה]]",
	"ממלכה",
	"טריטוריה",
	"טריטוריה אוטונומית",
	"טריטוריה פדרלית",
	"פרובינציה"
}
local hebrewAdm1st = {
	"[[אזורי אנגליה|אזור]]",
	"[[אזורי פינלנד|אזור]]",
	"[[חלוקה מנהלית של האימפריה הרוסית|גוברניה]]",
	"[[גאו (חלוקה מנהלית)|רייכסגאו]]",
	"[[הקנטונים של שווייץ|קנטון]]",
	"[[חבל ארץ אתנוגרפי]]",
	"[[חבל ארץ]]",
	"[[חבל ארץ]] במחלוקת",
	"[[חבלי הונגריה|חבל]]",
	"[[חבלי יפן|חבל]]",
	"[[חבלי ניו זילנד|חבל]]",
	"[[חבלי פורטוגל האוטונומיים|חבל]]",
	"[[חבלי צרפת|חבל]]",
	"[[חבלי צרפת|חבל]] לשעבר",
	"[[חבלי שוודיה|חבל]]",
	"[[חלוקה מנהלית של בוסניה והרצגובינה|מחוז]]",
	"[[חלוקה מנהלית של עומאן|מחוז]]",
	"[[חלוקה מנהלית של שוודיה#מחוזות שוודיה|מחוז]]",
	"[[מדינות ונצואלה|ישות פדרלית]]",
	"[[מדינות ונצואלה|מחוז פדרלי]]",
	"[[מדינת חסות|שטח חסות]]",
	"[[מועצה אזורית (מקסיקו)|מועצה אזורית]]",
	"[[מחוז (ארצות הברית)|מחוז]]",
	"[[מחוז אוטונומי]]",
	"[[מחוזות (אובלסטי) אוטונומיים של רוסיה|מחוז אוטונומי]]",
	"[[מחוזות (אובלסטי) של רוסיה|אובלסטי]]",
	"[[מחוזות (אוקרוגה) אוטונומיים של רוסיה|מחוז אוטונומי]]",
	"[[מחוזות (קראיה) של רוסיה|קראי]]",
	"[[מחוזות אבחזיה|מחוז]]",
	"[[מחוזות אוגנדה|מחוז]]",
	"[[מחוזות אוהיו|מחוז]]",
	"[[מחוזות אוזבקיסטן|מחוז]]",
	"[[מחוזות אוסטריה|מחוז]]",
	"[[מחוזות אוקראינה|מחוז]]",
	"[[מחוזות אורגון|מחוז]]",
	"[[מחוזות אורוגוואי|מחוז]]",
	"[[מחוזות אזרבייג'ן|מחוז]]",
	"[[מחוזות איטליה|מחוז]]",
	"[[מחוזות אילינוי|מחוז]]",
	"[[מחוזות אילינוי|מחוז]]",
	"[[מחוזות אינדונזיה|מחוז]]",
	"[[מחוזות איסלנד|מחוז]]",
	"[[מחוזות איראן|מחוז]]",
	"[[מחוזות אירלנד|מחוז]]",
	"[[מחוזות אל סלוודור|מחוז]]",
	"[[מחוזות אלבניה|מחוז]]",
	"[[מחוזות אנגולה|מחוז]]",
	"[[מחוזות אנגליה|מחוז]]",
	"[[מחוזות אסטוניה|מחוז]]",
	"[[מחוזות אפגניסטן|מחוז]]",
	"[[מחוזות אקוודור|מחוז]]",
	"[[מחוזות אריזונה|מחוז]]",
	"[[מחוזות אתיופיה|מחוז]]",
	"[[מחוזות בולגריה|מחוז]]",
	"[[מחוזות בלארוס|מחוז]]",
	"[[חלוקה מנהלית של בלגיה|מחוז]]",
	"[[מחוזות ברבדוס|מחוז]]",
	"[[מחוזות ברוניי|מחוז]]",
	"[[מחוזות גבון|מחוז]]",
	"[[מחוזות גאורגיה|מחוז]]",
	"[[מחוזות דקוטה הצפונית|מחוז]]",
	"[[מחוזות הודו|מחוז]]",
	"[[מחוזות הוואי|מחוז]]",
	"[[מחוזות הולנד|מחוז]]",
	"[[מחוזות הונגריה|מחוז]]",
	"[[מחוזות הונדורס|מחוז]]",
	"[[מחוזות המנדט הבריטי|מחוז]]",
	"[[מחוזות הפיליפינים|מחוז]]",
	"[[מחוזות הרפובליקה הדמוקרטית של קונגו|מחוז לשעבר]]",
	"[[מחוזות הרפובליקה הדמוקרטית של קונגו|מחוז]]",
	"[[מחוזות הרפובליקה העממית של סין|מחוז אוטונומי]]",
	"[[מחוזות הרפובליקה העממית של סין|מחוז]]",
	"[[מחוזות הרפובליקה של קונגו|מחוז]]",
	"[[מחוזות וושינגטון|מחוז]]",
	"[[מחוזות ויומינג|מחוז]]",
	"[[מחוזות ויילס|מחוז]]",
	"[[מחוזות ויסקונסין|מחוז]]",
	"[[מחוזות טג'יקיסטן|מחוז]]",
	"[[מחוזות טובאלו|מחוז]]",
	"[[מחוזות טוגו|מחוז]]",
	"[[מחוזות טורקיה|מחוז]]",
	"[[מחוזות טנזניה|מחוז]]",
	"[[מחוזות טנזניה|מחוז]]",
	"[[מחוזות טנסי|מחוז]]",
	"[[מחוזות יוון|מחוז]]",
	"[[מחוזות יוטה|מחוז]]",
	"[[מחוזות יפן|מחוז]]",
	"[[מחוזות ירדן|מחוז]]",
	"[[מחוזות ישראל|מחוז]]",
	"[[המחוזות הכלכליים של רוסיה|מחוז כלכלי]]",
	"[[מחוזות לבנון|מחוז]]",
	"[[מחוזות לוב|מחוז]]",
	"[[מחוזות לטביה|מחוז]]",
	"[[מחוזות ליטא|מחוז]]",
	"[[מחוזות מדינת ניו יורק|מחוז]]",
	"[[מחוזות מולדובה|מחוז]]",
	"[[מחוזות מונגוליה|מחוז]]",
	"[[מחוזות מונטנגרו|מחוז]]",
	"[[מחוזות מזרח טימור|מחוז]]",
	"[[מחוזות מיין|מחוז]]",
	"[[מחוזות מינסוטה|מחוז]]",
	"[[מחוזות מלאווי|מחוז]]",
	"[[מחוזות מצרים|מחוז]]",
	"[[מחוזות נאורו|מחוז]]",
	"[[מחוזות נבדה|מחוז]]",
	"[[מחוזות נורווגיה|מחוז]]",
	"[[מחוזות ניו מקסיקו|מחוז]]",
	"[[מחוזות נמיביה|מחוז]]",
	"[[מחוזות סוריה|מחוז]]",
	"[[מחוזות סין העממית|מחוז אוטונומי]]",
	"[[מחוזות סין העממית|מחוז]]",
	"[[מחוזות סלובקיה|מחוז]]",
	"[[מחוזות ספרד|מחוז]]",
	"[[מחוזות סקוטלנד|מחוז]]",
	"[[מחוזות עיראק|מחוז]]",
	"[[מחוזות ערב הסעודית|מחוז]]",
	"[[מחוזות פדרליים של רוסיה|מחוז פדרלי]]",
	"[[מחוזות פוארטו ריקו|מחוז]]",
	"[[מחוזות פולין|מחוז]]",
	"[[מחוזות פורטוגל|מחוז]]",
	"[[מחוזות פלורידה|מחוז]]",
	"[[חלוקה מנהלית של פקיסטן|מחוז עצמאי]]",
	"[[חלוקה מנהלית של פקיסטן|מחוז]]",
	"[[מחוזות פרו|מחוז]]",
	"[[מחוזות צ'ילה|מחוז]]",
	"[[מחוזות צ'כיה|מחוז]]",
	"[[מחוזות צפון אירלנד|מחוז]]",
	"[[מחוזות צרפת מעבר לים|מחוז שמעבר לים]]",
	"[[מחוזות צרפת|מחוז]]",
	"[[מחוזות קובה|מחוז]]",
	"[[מחוזות קולומביה|מחוז]]",
	"[[מחוזות קוסטה ריקה|מחוז]]",
	"[[מחוזות קוריאה הצפונית|מחוז]]",
	"[[מחוזות קוריאה הדרומית|מחוז]]",
	"[[מחוזות קזחסטן|מחוז]]",
	"[[מחוזות קטר|מחוז]]",
	"[[מחוזות קליפורניה|מחוז]]",
	"[[מחוזות קמבודיה|מחוז]]",
	"[[אזורי קמרון|אזור]]",
	"[[מחוזות קרואטיה|מחוז]]",
	"[[מחוזות רומניה|מחוז]]",
	"[[מחוזות שוודיה|מחוז]]",
	"[[מחוזות שווייץ|מחוז]]",
	"[[מחוזות של רוסיה|אובלסט]]",
	"[[מחוזות תאילנד|מחוז]]",
	"[[מחוזות תוניסיה|מחוז]]",
	"[[מחוזות תימן|מחוז]]",
	"[[חלוקה מנהלית של בלגיה|פרובינציה]]",
	"[[קהילות אוטונומיות של ספרד|קהילה אוטונומית]]",
	"[[קהילות אוטונומיות של אנדורה|קהילה אוטונומית]]",
	"[[הקנטונים של הפדרציה של בוסניה והרצגובינה|קנטון]]",
	"אזור",
	"אזור גאוגרפי",
	"אזור היסטורי",
	"בסיס צבאי",
	"[[בסיס צבאי]]",
	"חבל",
	"חבל אוטונומי",
	"חבל ארץ",
	"חבל ארץ אתנוגרפי",
	"חבל ארץ במחלוקת",
	"חבל היסטורי",
	"מחוז",
	"נסיכות",
	"מחוז אוטונומי"	
}

local hebrewAdm2nd = {
	"[[הקסטלי של סן מרינו|קסטלי]]",
	"מחוז היסטורי",
	"מחוז משנה",
	"[[גוש התיישבות|גוש]]",
	"גוש התיישבות",
	"נפה",
	"[[נפה (יחידה שלטונית)|נפה]]",
	"[[חלוקה מנהלית של סין העממית|נפה]]",
	"[[חלוקה מנהלית של אסטוניה|נפה]]",
	"[[רשויות מקומיות של ליטא|רשות מקומית]]",
	"[[מחוזות משנה של ליטא|מחוז משנה]]",
	"[[מחוזות משנה של בלארוס|מחוז משנה]]",
	"[[מחוזות פיג'י|יחידה אוטונומית]]",
	"[[נפות איטליה|נפה]]",
	"[[נפות אלבניה|נפה]]",
	"[[נפות ארגנטינה|נפה]]",
	"[[נפות אתיופיה|נפה]]",
	"[[נפות גאורגיה|נפה]]",
	"[[נפות המנדט הבריטי|נפה]]",
	"[[נפות הרשות הפלסטינית|נפה]]",
	"[[נפות טורקיה|נפה]]",
	"[[מחוזות יפן|נפה]]",
	"[[נפות ישראל|נפה]]",
	"[[נפות לבנון|נפה]]",
	"[[נפות סוריה|נפה]]",
	"[[נפות פולין|נפה]]",
	"[[נפות פקיסטן|נפה]]",
	"[[נפות צרפת|נפה]]",
	"[[נפות קוריאה הדרומית|נפה]]",
	"[[נפות קוריאה הצפונית|נפה]]",
	"[[נפות רוסיה|נפה]]",
	"[[נפות תאילנד|נפה]]",
	"[[נפות מוסקבה|נפה]]",
	"[[פרובינציה]] [[אוטונומיה|אוטונומית]]",
	"[[קהילות אוטונומיות של אנדורה|קהילה אוטונומית]]",
	"[[ראיון (חלוקה מנהלית)|מחוז משנה]]",
	"[[ראיון (חלוקה מנהלית)|נפה]] עירונית",
	"[[ראיון (חלוקה מנהלית)|ראיון]] עירוני",
	"[[מחוזות משנה של אוקראינה|מחוז משנה]]",
	"[[הערים המטרופוליניות של איטליה|עיר מטרופולינית]]",
	"מועצה עירונית",
	"מחוז מוניציפלי",
	"שטח גלילי",
	"[[שטח גלילי]]",
	"אזור מנהלי",
	"תחום מנהלי",
	"קהילה"
}

local hebrewCity = {
	"[[23 הרבעים של טוקיו|רובע מיוחד]]",
	"[[חווה חקלאית|חווה]]",
	"[[חווה חקלאית]]",
	"[[חלוקה מנהלית של מוסקבה|מחוז אדמיניסטרטיבי]]",
	"[[חלוקה מנהלית של סין העממית|נפה עירונית]]",
	"[[חלוקה מנהלית של סין העממית|נציבות עירונית]]",
	"[[חלוקה מנהלית של סין העממית|תת-מחוז עירוני]]",
	"[[חלוקה מנהלית של סין העממית|תת-נציבות עירונית]]",
	"[[חלוקה מנהלית של סין העממית|רובע]]",
	"[[חלוקה מנהלית של סין העממית|תת-רובע]]",
	"[[חלוקה מנהלית של סנקט פטרבורג|נפה]]",
	"[[יישוב]]",
	"[[כפר]]",
	"[[כפר בלתי מוכר]]",
	"[[כפר נוער]]",
	"[[מאחז]]",
	"[[מחוז]]",
	"[[מובלעת]]",
	"[[מועצה אזורית]]",
	"[[מועצות מקומיות של מלטה|מועצה מקומית]]",
	"[[מועצת מחוז]]",
	"[[מושבה]]",
	"[[מושבת כתר]]",
	"[[מחוזות יוון#יחידות אזוריות|יחידה אזורית]]",
	"[[מחוזות סין העממית|מחוז עירוני]]",
	"[[מחנות העקורים|מחנה עקורים]]",
	"[[מחנה פליטים]]",
	"[[מטרופולין]]",
	"[[מעברה]]",
	"[[נווה מדבר]]",
	"[[נפה עירונית]]",
	"[[נציבות עירונית]]",
	"[[עיירה]]",
	"[[עיר רפאים]]",
	"[[עיר]]",
	"עיר היסטורית",
	"[[פרבר]]",
	"[[פרגזיה]]",
	"[[פרוור]]",
	"[[קולוניה]]",
	"[[קומונה (איטליה)|קומונה]]",
	"[[קומונה (צרפת)|קומונה]]",
	"[[קומין]]",
	"קומין",
	"[[קיבוץ]]",
	"קיבוץ",
	"קנטון",
	"[[קסבה]]",
	"[[קסר]]",
	"[[רובע]]",
	"[[רובעי אמסטרדם|רובע]]",
	"[[רובעי ברלין|רובע]]",
	"[[רובעי ונציה|רובע]]",
	"[[רובעי וינה|רובע]]",
	"[[רובעי חיפה|רובע]]",
	"[[רובעי טורונטו|רובע]]",
	"[[רובעי לונדון|רובע]]",
	"[[רובעי מונקו|רובע]]",
	"[[רובעי ניו יורק|רובע]]",
	"[[רובעי עמאן|רובע]]",
	"[[רובעי פריז|רובע]]",
	"[[רובעי קהיר|רובע]]",
	"[[רובעי ורשה|רובע]]",
	"[[רובעי רומא|רובע]]",
	"[[רובעי שאנגחאי|רובע]]",
	"[[רובעי בודפשט|רובע]]",
	"[[רשות מקומית]]",
	"[[שכונה]]",
	"[[שכונות בוקרשט|שכונה]]",
	"[[שכונות לונדון|שכונה]]",
	"[[שכונות לוס אנג'לס|שכונה]]",
	"[[שכונות ניו יורק|שכונה]]",
	"[[שכונות סן פרנסיסקו|שכונה]]",
	"[[תת-נפות של טורקיה|תת-נפה]]",
	"אתר ארכאולוגי",
	"[[אתר ארכאולוגי]]",
	"אתר נופש",
	"חווה",
	"חווה חקלאית",
	"יחידה אזורית",
	"יישוב",
	"יישוב לשעבר",
	"יישוב עירוני",
	"יישוב קהילתי",
	"[[יישוב קהילתי]]",
	"כפר",
	"כפר בלתי מוכר",
	"כפר נוער",
	"כפר נופש",
	"מאחז",
	"מובלעת",
	"מועצה אזורית",
	"מועצה אזורית לשעבר",
	"מועצה מיוערת",
	"מועצה מקומית",
	"[[מועצה מקומית תעשייתית]]",
	"מועצת מחוז",
	"מושבה",
	"מושבת כתר",
	"מחוז עירוני",
	"מחנה עקורים",
	"מחנה פליטים",
	"מטרופולין",
	"מעברה",
	"מעמד מקראי",
	"מתחם",
	"מתחם בלתי חוקי",
	"[[נאחיות של סוריה|נאחיה]]",
	"נווה מדבר",
	"נפה עירונית",
	"נציבות עירונית",
	"עיירה",
	"עיירה לשעבר",
	"עיר",
	"עיר עתיקה",
	"עיר רפאים",
	"עיר פדרלית",
	"פרבר",
	"פרגזיה",
	"פרוור",
	"קו חוף",
	"קולוניה",
	"קומונה",
	"קסבה",
	"קסר",
	"רובע",
	"רובע עירוני",
	"רובע עסקים",
	"רשות מוניציפלית",
	"רשות מקומית",
	"שבט",
	"[[שבט]]",
	"שוק",
	"שכונה",
	"תחנת מחקר",
	"[[תחנת מחקר]]",
	"תת-מחוז עירוני",
	"תת-נפה"
}
function isInTable(searchString, searchTable) 
	for _, v in pairs(searchTable) do
		if v == searchString then
			return true
		end
	end
end

function adminDistTranslate(hebrewAdministrative)
	if isInTable(hebrewAdministrative, hebrewState) then
		return 'state'
	end
	if isInTable(hebrewAdministrative, hebrewAdm1st) then
		return 'adm1st'
	end
	if isInTable(hebrewAdministrative, hebrewAdm2nd) then
		return 'adm2nd'
	end
	if isInTable(hebrewAdministrative, hebrewCity) then
		return 'city'
	end
	return ''
end

function adminDistTranslateColor(hebrewAdministrative)
	local adminDist = adminDistTranslate(hebrewAdministrative)
	if adminDist == 'state' then
		return 'F4DDA1'
	end
	if adminDist == 'adm1st' then
		return '90EE90'
	end
	if adminDist == 'adm2nd' then
		return 'ADD8E6'		
	end
	if adminDist == 'city' then
		return 'D3D3D3'		
	end
	return 'b0c4de'
end

function adminDistTranslateWrapper(frame)
	return adminDistTranslate(frame.args[1])
end

function adminDistTranslateColorWrapper(frame)
	return adminDistTranslateColor(frame.args[1])
end

-- Split the comma-separated lists into tables and sort them
local function splitString(inputstr, sep)
    local sep, fields = sep or ",", {}
    local pattern = string.format("([^%s]+)", sep)
    inputstr:gsub(pattern, function(c) fields[#fields + 1] = c end)
    return fields
end

local function findTheLatestDate(dateList)
	local iso8601DateList = {}
	local latestIsoDate = 0
	local indexOfLatestIsoDate = 0

	-- Convert the dates to ISO 8601 format
	for i, isoDate in ipairs(dateList) do
		local successOfIso8601DateList
	    successOfIso8601DateList, iso8601DateList[i] = pcall(dateModule.parseStrDate, isoDate, 'TS')
	    if (i == 1) then
	    	latestIsoDate = iso8601DateList[1]
	    	indexOfLatestIsoDate = 1
	    else
	    	if (latestIsoDate > iso8601DateList[i]) then
	    		latestIsoDate = iso8601DateList[i]
	    		indexOfLatestIsoDate = i
	    	end
	    end
	end
	return latestIsoDate, indexOfLatestIsoDate
end

function returnLatestData(frame, property)
	local dateModule = require('Module:תאריך')
	local propertyLink = require('Module:PropertyLink')
	local parenthesis = require('Module:סוגריים')

	local timeProperty = { 'P580', 'P582', 'P585' }
	local options = {
		['qualifiers'] = timeProperty,
		['allowMulti'] = true,
		['seperator'] = ';'
	}
	
	local entityId = frame:getParent().args['qid'] or mw.wikibase.getEntityIdForCurrentPage()
	local res = propertyLink.getPropertyByOptions(property, entityId, options)
	return parenthesis.remove_parents_internal(res), parenthesis.only_parents_contents_internal(res)
end

function returnLatestMayor(frame)
	local mayor, latestMayorDate = returnLatestData(frame, 'P6')
	return mayor
end

function returnLatestPopulation(frame)
	local population, latestPopulationDate = returnLatestData(frame, 'P1082')
	return population
end

function returnLatestPopulationDate(frame)
	local population, latestPopulationDate = returnLatestData(frame, 'P1082')
	return latestPopulationDate
end

return 	{
	['חלוקה מנהלית']=adminDistTranslateWrapper,
	['צבע רקע לפי חלוקה מנהלית']=adminDistTranslateColorWrapper,
	['ראש העיר']=returnLatestMayor,
	['אוכלוסייה']=returnLatestPopulation,
	['תאריך אוכלוסייה']=returnLatestPopulationDate
}