Modül:temalar

Merhaba, buraya Modül:temalar kelimesinin anlamını aramaya geldiniz. DICTIOUS'da Modül:temalar kelimesinin tüm sözlük anlamlarını bulmakla kalmayacak, aynı zamanda etimolojisini, özelliklerini ve Modül:temalar kelimesinin tekil ve çoğul olarak nasıl söylendiğini de öğreneceksiniz. Modül:temalar kelimesi hakkında bilmeniz gereken her şey burada. Modül:temalar kelimesinin tanımı, konuşurken veya metinlerinizi yazarken daha kesin ve doğru olmanıza yardımcı olacaktır. XXX'in ve diğer kelimelerin tanımını bilmek, kelime dağarcığınızı zenginleştirir ve size daha fazla ve daha iyi dilsel kaynaklar sağlar.
Modül belgelemesi

Modülün alt sayfaları:


local cikart = {}


local Tema = {}


function Tema:getirAsilAd()
	return mw.getContentLanguage():ucfirst(self._asilAd)
end


function Tema:getirKategori()
	return self._asilAd
end


function Tema:getirBaslikAdi()
	return self._rawData.baslikAdi
end


function Tema:getirEbeveynler()
	ebeveynler = self._rawData.ebeveynler
	
	return ebeveynler or {}
end


function Tema:direktMi()
	return self._rawData.direkt
end


function Tema:varmiDilKategorisi()
	if self._rawData.dil_kategorisi == false then
		return nil
	else
		return true
	end
end


function Tema:getirAciklama(ekliDil)
	if self._rawData.aciklama then
		if ekliDil then
			return ekliDil .. " " .. self._rawData.aciklama
		else
			return mw.getContentLanguage():ucfirst(self._rawData.aciklama)
		end
	else
		return ""
	end
end


function Tema:getirYanlisYazimlar()
	return self._rawData.yanlisYazimlar
end


function Tema:getirTip()
	return self._rawData.tip or self._tip or nil
end


function Tema:getirOrtak()
	if self._rawData.ortak == false then
		return false
	else
		return true
	end
end


function Tema:getirAnahtar()
	return self._rawData.anahtar or false
end


function Tema:getirGizli()
	return self._rawData.gizli or false
end


function Tema:getirVeriModulu()
	return "Modül:temalar/veri" .. (self._tip == "" and "" or "/") .. self._tip
end


function Tema:getirSiraAnahtari()
	return self._rawData.sira_anahtari or mw.getContentLanguage():ucfirst(self._asilAd)
end


function Tema:getirKategoriAdi(ekliDil)
	if self._asilAd == "ana kategoriler" or self._asilAd == "tüm diller" or not ekliDil then
		return mw.getContentLanguage():ucfirst(self._asilAd)
	else
		return mw.getContentLanguage():ucfirst(ekliDil .. " " .. self._asilAd)
	end
end


function Tema:toJSON()
	local ret = {
		ebeveynler = self:getirEbeveynler(),
		alt = self:getirAlt(),
		aciklama = self:getirAciklama(),
		direkt = self:direktMi(),
		tip = _tip,
		asilAd = _asilAd,
		sira_anahtari = self:getirSiraAnahtari(),
		dil_kategorisi = self:varmiDilKategorisi(),
		}
	
	return require("Modül:JSON").toJSON(ret)
end


function Tema:getRawData()
	return self._rawData
end


Tema.__index = Tema


function cikart.olusturNesne(asilAd, veri, tip)
	return veri and setmetatable({ _rawData = veri, _asilAd = asilAd, _tip = tip }, Tema) or nil
end


function cikart.getirBaslikAdinaGore(baslik)
	tablo = {}
	
	for ad, veri in pairs(mw.loadData("Modül:temalar/veri/söz türü")) do
		if veri.baslikAdi then
			tablo = ad
		end
	end
	
	local asilAd = tablo
	
	return cikart.olusturNesne(asilAd, require("Modül:temalar/veri/söz türü"), "söz türü")
end


function cikart.getirAsilAdaGore(asilAd, anah)
	local altsayfalar = {
		"",
		"konu",
		"grup",
		"şablon",
		"söz türü",
		"söz biçim"
	}
	
	local verimodulu
	
	for _, altsayfa in ipairs(altsayfalar) do
		verimodulu = "Modül:temalar/veri" .. (altsayfa == "" and "" or "/") .. altsayfa
		tip = altsayfa
		if require(verimodulu) then
			break
		end
	end
	
	local tablo = mw.loadData(verimodulu)
	
	if mw.ustring.find(asilAd, "Dillerine göre") then
		tablo = { = {
			ebeveynler = {mw.ustring.gsub( asilAd, "Dillerine göre ", "" )},
			sira_anahtari = "+"
		}}
	end
	
	if mw.ustring.find(asilAd, "son ekiyle oluşmuş sözcükler") then
		tablo = { = {
			ebeveynler = {"son eklerine göre sözcükler"},
			sira_anahtari = mw.ustring.sub( asilAd, 2, -1 ),
			ortak = false
		}}
	end
	
	if mw.ustring.find(asilAd, "ön ekiyle oluşmuş sözcükler") then
		tablo = { = {
			ebeveynler = {"ön eklerine göre sözcükler"},
			sira_anahtari = mw.ustring.sub( asilAd, 1, 1 ),
			ortak = false
		}}
	end
	
	if mw.ustring.len( asilAd ) == 1 then
		tablo = { = {
			ebeveynler = {"bireysel karakterlerine göre sözcükler"},
		}}
	end
	
	return cikart.olusturNesne(asilAd, tablo, tip)
end


return cikart