Модуль:Данные страницы
Объект, содержащий данные о странице, нормализованные и викифицированые значения, некоторые основные методы.
Используется в Модуль:Обавторе, Модуль:Отексте и их подмодулях.
Модули могут дополнять этот объект своими методами и значениями.
local p = {} p.page = { categories = {}, -- викифицированные категории categories_raw = {}, -- категории без викификации -- эти данные собираются [[Модуль:Источники по теме]] projects = {}, -- интервики и другие википроекты sitelinks = {}, -- интервики из Викиданных как есть, напр.: { ["ruwiki"] = "Гартман фон Ауэ", ["ruwikisource"] = "Гартман фон Ауе", ["wikidata"] = "Q75852", ["commons"] = "Category:Hartmann von Aue", ["commonswiki"] = "Hartmann von Aue", } enc_wikilinks = {}, -- викифицированные ссылки на энциклопедии Викитеки encyclopedias_ids = {}, -- IDs элементов энциклопедических статей в Викиданных external_sites = {}, -- данные энциклопедических статей на внешних сайтах enc_links_rendered = '', projects_links_rendered = '', -- текстовые строки со ссылками на проекты и энциклопедии для отображения в шаблонах-шапках (Модуль:Обавторе, Модуль:Отексте), обычно включают html-тэги } function p.page:init(frame) self.frame1 = frame self.is_author_page = frame.is_author_page -- флаг страницы автора, ставится в Модуль:Обавторе local frame = frame:getParent() self.frame = frame self.isPRS = frame.isPRS -- страница в дореформенной орфографии, устанавливается в Модуль:Отексте -- page.isPRS = require("Module:Header").parse_title(mw.title.getCurrentTitle().text, "isPRS") -- isDO = isCurrentPageDO() -- self.args = frame:getParent().args self.args = frame.args self.title = mw.title.getCurrentTitle().text -- полное название страницы без ПИ self.entity = mw.wikibase.getEntity() self.entity_topic = nil -- Элемент темы, указанный в шаблоне-шапке в параметре ВИКИДАННЫЕ или ВИКИПЕДИЯ; или в элементе в свойствах P921, P629. Из него берутся ссылки вместо оригинального элемента end function p.page:add_category(s) -- метод добавления категории table.insert(self.categories, '[[Категория:' .. s .. ']]') table.insert(self.categories_raw, s) end return p