local
p
=
{}
local
getArgs
function
p
.
_navbar
(
args
)
local
titleArg
=
1
if
args
.
collapsible
then
titleArg
=
2
if
not
args
.
plain
then
args
.
mini
=
1
end
if
args
.
fontcolor
then
args
.
fontstyle
=
'color:'
..
args
.
fontcolor
..
';'
end
args
.
style
=
'float:left; text-align:left; white-space:nowrap;'
end
if
args
[
titleArg
]
==
'off'
then
return
end
local
titleText
=
args
[
titleArg
]
or
(
':'
..
mw
.
getCurrentFrame
():
getParent
():
getTitle
())
local
title
=
mw
.
title
.
new
(
mw
.
text
.
trim
(
titleText
),
'Template'
);
if
not
title
then
error
(
'Invalid title '
..
titleText
)
end
local
talkpage
=
title
.
talkPageTitle
and
title
.
talkPageTitle
.
fullText
or
''
;
if
args
.
nodiv
then
tag
=
'span'
else
tag
=
'div'
end
local
div
=
mw
.
html
.
create
():
tag
(
tag
)
div
:
addClass
(
'plainlinks'
)
:
addClass
(
'noprint'
)
:
addClass
(
'navbar'
)
:
cssText
(
args
.
style
or
'text-align:left; white-space:nowrap;'
)
if
args
.
mini
then
div
:
addClass
(
'mini'
)
end
if
not
(
args
.
mini
or
args
.
plain
)
then
div
:
tag
(
'span'
)
:
css
(
'word-spacing'
,
0
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
args
.
text
or
'Майык:'
)
:
wikitext
(
' '
)
end
if
args
.
brackets
then
div
:
tag
(
'span'
)
:
css
(
'margin-right'
,
'-0.125em'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
'['
)
--:newline();
end
local
ul
=
div
:
tag
(
'span'
);
ul
:
tag
(
'span'
)
:
addClass
(
'nv-view'
)
:
wikitext
(
'[['
..
title
.
fullText
..
'|'
)
:
tag
(
args
.
mini
and
'abbr'
or
'span'
)
:
addClass
(
args
.
mini
and
'navbar-mini-abbr'
)
:
attr
(
'title'
,
'Ук майыкты к??р'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
args
.
mini
and
'к'
or
'к??р'
)
:
done
()
:
wikitext
(
']]'
)
:
done
()
:
tag
(
'span'
)
:
addClass
(
'nv-talk'
)
:
wikitext
(
' • '
)
:
wikitext
(
'[['
..
talkpage
..
'|'
)
:
tag
(
args
.
mini
and
'abbr'
or
'span'
)
:
attr
(
'title'
,
'Ук майык дугайында чугаалажыр'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
args
.
mini
and
'ч'
or
'чугаа'
or
'чугаалажыр'
)
:
done
()
:
wikitext
(
']]'
);
if
not
args
.
noedit
then
ul
:
tag
(
'span'
)
:
addClass
(
'nv-edit'
)
:
wikitext
(
' • '
)
:
wikitext
(
'['
..
title
:
fullUrl
(
'action=edit'
)
..
' '
)
:
tag
(
args
.
mini
and
'abbr'
or
'span'
)
:
attr
(
'title'
,
'Ук майыкты эдер'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
args
.
mini
and
'э'
or
'эдер'
)
:
done
()
:
wikitext
(
']'
);
end
if
args
.
brackets
then
div
:
tag
(
'span'
)
:
css
(
'margin-left'
,
'-0.125em'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
']'
)
--:newline();
end
if
args
.
collapsible
then
div
:
done
()
:
tag
(
'span'
)
:
css
(
'font-size'
,
'110%'
)
:
cssText
(
args
.
fontstyle
)
:
wikitext
(
args
[
1
])
end
return
tostring
(
div
:
done
())
end
function
p
.
navbar
(
frame
)
if
not
getArgs
then
getArgs
=
require
(
'Module:Arguments'
).
getArgs
end
return
p
.
_navbar
(
getArgs
(
frame
))
end
return
p