<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="uk">
	<id>https://wiki.nuwm.edu.ua/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3ANavbar</id>
	<title>Модуль:Navbar - Історія редагувань</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nuwm.edu.ua/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3ANavbar"/>
	<link rel="alternate" type="text/html" href="https://wiki.nuwm.edu.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbar&amp;action=history"/>
	<updated>2026-05-26T21:59:31Z</updated>
	<subtitle>Історія редагувань цієї сторінки в вікі</subtitle>
	<generator>MediaWiki 1.36.0</generator>
	<entry>
		<id>https://wiki.nuwm.edu.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbar&amp;diff=1851&amp;oldid=prev</id>
		<title>Олександр Юрійович Старовєров: 1 версія</title>
		<link rel="alternate" type="text/html" href="https://wiki.nuwm.edu.ua/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Navbar&amp;diff=1851&amp;oldid=prev"/>
		<updated>2015-09-17T08:03:37Z</updated>

		<summary type="html">&lt;p&gt;1 версія&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова сторінка&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
function trim(s)&lt;br /&gt;
    return mw.ustring.match( s, &amp;quot;^%s*(.-)%s*$&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function error(s)&lt;br /&gt;
    local span = mw.html.create('span')&lt;br /&gt;
&lt;br /&gt;
    span&lt;br /&gt;
        :addClass('error')&lt;br /&gt;
        :css('float', 'left')&lt;br /&gt;
        :css('white-space', 'nowrap')&lt;br /&gt;
        :wikitext('Помилка: ' .. s)&lt;br /&gt;
&lt;br /&gt;
    return tostring(span)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function getTitle( pageName )&lt;br /&gt;
    pageName = trim( pageName );&lt;br /&gt;
    local page_title, talk_page_title;&lt;br /&gt;
    &lt;br /&gt;
    if mw.ustring.sub(pageName, 1, 1) == ':' then&lt;br /&gt;
        page_title = mw.title.new( mw.ustring.sub(pageName, 2) );&lt;br /&gt;
    else&lt;br /&gt;
        page_title = mw.title.new( pageName, 'Шаблон' );&lt;br /&gt;
    end    &lt;br /&gt;
    &lt;br /&gt;
    if page_title then &lt;br /&gt;
        talk_page_title = page_title.talkPageTitle;&lt;br /&gt;
    else&lt;br /&gt;
        talk_page_title = nil;&lt;br /&gt;
    end&lt;br /&gt;
    &lt;br /&gt;
    return page_title, talk_page_title;    &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function _navbar( args )&lt;br /&gt;
    if not args[1] then&lt;br /&gt;
        return error('Не задано назву')&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    local good, title, talk_title;&lt;br /&gt;
    good, title, talk_title = pcall( getTitle, args[1] );&lt;br /&gt;
    if not good then&lt;br /&gt;
        return error('Перевищено ліміт дорогих парсерних функцій');&lt;br /&gt;
    end    &lt;br /&gt;
&lt;br /&gt;
    if not title then&lt;br /&gt;
        return error('Сторінка не існує')&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    local mainpage = title.fullText;&lt;br /&gt;
    local talkpage = talk_title and talk_title.fullText or ''&lt;br /&gt;
    local editurl = title:fullUrl( 'action=edit' ); &lt;br /&gt;
 &lt;br /&gt;
    local viewLink, talkLink, editLink = 'переглянути', 'обговорити', 'редагувати'&lt;br /&gt;
    if args.mini then&lt;br /&gt;
        viewLink, talkLink, editLink = 'п', 'о', 'р'&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    local div = mw.html.create('div')&lt;br /&gt;
    div&lt;br /&gt;
        :addClass( 'noprint' )&lt;br /&gt;
        :addClass( 'plainlinks' )&lt;br /&gt;
        :addClass( 'hlist' )&lt;br /&gt;
        :addClass( 'navbar')&lt;br /&gt;
        :cssText( args.style )&lt;br /&gt;
 &lt;br /&gt;
    if args.mini then div.addClass('mini') end&lt;br /&gt;
 &lt;br /&gt;
    if not (args.mini or args.plain) then&lt;br /&gt;
        div&lt;br /&gt;
            :tag( 'span' )&lt;br /&gt;
                :css( 'word-spacing', 0 )&lt;br /&gt;
                :cssText( args.fontstyle )&lt;br /&gt;
                :wikitext( args.text or 'Цей шаблон:' )&lt;br /&gt;
                :wikitext( ' ' )&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    if args.brackets then&lt;br /&gt;
        div&lt;br /&gt;
            :tag('span')&lt;br /&gt;
                :css('margin-right', '-0.125em')&lt;br /&gt;
                :cssText( args.fontstyle )&lt;br /&gt;
                :wikitext( '&amp;amp;#91;' )&lt;br /&gt;
                :newline();&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    local ul = div:tag('ul');&lt;br /&gt;
 &lt;br /&gt;
    ul&lt;br /&gt;
        :tag( 'li' )&lt;br /&gt;
            :addClass( 'nv-view' )&lt;br /&gt;
            :wikitext( '[[' .. mainpage .. '|' )&lt;br /&gt;
            :tag( 'span' )&lt;br /&gt;
                :attr( 'title', 'Переглянути цей шаблон' )&lt;br /&gt;
                :cssText( args.fontstyle or '' )&lt;br /&gt;
                :wikitext( viewLink )&lt;br /&gt;
                :done()&lt;br /&gt;
            :wikitext( ']]' )&lt;br /&gt;
            :done()&lt;br /&gt;
        :tag( 'li' )&lt;br /&gt;
            :addClass( 'nv-talk' )&lt;br /&gt;
            :wikitext( '[[' .. talkpage .. '|' )&lt;br /&gt;
            :tag( 'span' )&lt;br /&gt;
                :attr( 'title', 'Обговорити цей шаблон' )&lt;br /&gt;
                :cssText( args.fontstyle or '' )&lt;br /&gt;
                :wikitext( talkLink )&lt;br /&gt;
                :done()&lt;br /&gt;
            :wikitext( ']]' );&lt;br /&gt;
 &lt;br /&gt;
    if not args.noedit then &lt;br /&gt;
        ul&lt;br /&gt;
            :tag( 'li' )&lt;br /&gt;
                :addClass( 'nv-edit' )&lt;br /&gt;
                :wikitext( '[' .. editurl .. ' ' )&lt;br /&gt;
                :tag( 'span' )&lt;br /&gt;
                    :attr( 'title', 'Редагувати цей шаблон' )&lt;br /&gt;
                    :cssText( args.fontstyle or '' )&lt;br /&gt;
                    :wikitext( editLink )&lt;br /&gt;
                    :done()&lt;br /&gt;
                :wikitext( ']' );&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    if args.brackets then&lt;br /&gt;
        div&lt;br /&gt;
            :tag('span')&lt;br /&gt;
                :css('margin-left', '-0.125em')&lt;br /&gt;
                :cssText( args.fontstyle or '' )&lt;br /&gt;
                :wikitext( '&amp;amp;#93;' )&lt;br /&gt;
                :newline();&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    return tostring(div)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.navbar(frame)&lt;br /&gt;
    local origArgs&lt;br /&gt;
    -- Якщо викликаний через #invoke, використовувати аргументи, передані через шаблон, що викликає.&lt;br /&gt;
    -- Інакше, у цілях тестування, припустити, що аргументи передані напряму.&lt;br /&gt;
    if frame == mw.getCurrentFrame() then&lt;br /&gt;
        origArgs = frame:getParent().args&lt;br /&gt;
    else&lt;br /&gt;
        origArgs = frame&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    -- ParserFunctions розглядають порожній рядок як false, тож, щоб дотриматися попередньої&lt;br /&gt;
    -- поведінки {{navbar}}, міняємо всі порожні аргументи на nil, тож Lua розгляне&lt;br /&gt;
    -- їх також як false.&lt;br /&gt;
    args = {}&lt;br /&gt;
    for k, v in pairs(origArgs) do&lt;br /&gt;
        if v ~= '' then&lt;br /&gt;
            args[k] = v&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
 &lt;br /&gt;
    return _navbar(args)&lt;br /&gt;
end&lt;br /&gt;
 &lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Олександр Юрійович Старовєров</name></author>
	</entry>
</feed>