From Wikipedia, the free encyclopedia


local p = {}



-- Color palette and wikitext for the opinion arguments. Each group is only mentioned once, e.g. majority stands for majority, 

-- majority1, majority2, majority3, majority4 and majority5

-- The color comes first in the table, then wikitext for numbered values, then wikitext for non-numbered values, 

-- and finally, human-friendly text that is output to screen reading software used by blind and low vision users.

-- Numbers in the wikitext are taken from the values themselves (e.g. majority1 has the wikitext "1" plus whatever wikitext that is

-- mentioned here.

-- Examples: plurality has the wikitext of "*" and the color "#00CD00"

--           plurality1 has the wikitext of "1*" - "1" is taken from the value itself and "*" comes from this table. It has 

--           the color "#00CD00".

--           Both plurality and plurality1 output the text "delivered the court's opinion" to screen readers.

   

local palette = {

	majority = {"#00CD00", "", "", "delivered the court's opinion"},

	plurality = {"#00CD00", "*", "*", "delivered the court's opinion"},

	concurrence = {"#00B2EE", "", "", "filed a concurrence"},

	concurrencewithoutopinion = {"#79CDCD", "", "-", "filed a concurrence"},

	concurrencedissent = {"#B23AEE", "", "", "filed a concurrence dissent"},

	concurrencedissentwithoutopinion = {"#CC99CC", "", "-", "filed a concurrence dissent"},

	dissent = {"red", "", "", "filed a dissent"},

	dissentwithoutopinion = {"#EE9572", "", "-", "filed a dissent without opinion"},

	joinmajority = {"#93DB70", "", "", "joined the court's opinion"},

	partjoinmajority = {"#93DB70", "*", "*", "partially joined the court's opinion"},

	joinplurality = {"#93DB70", "", "", "joined the court's opinion"},

	partjoinplurality = {"#93DB70", "*", "*", "partially joined the court's opinion"},

	joinconcurrence = {"#79CDCD", "", "", "joined a concurrence"},

	partjoinconcurrence = {"#79CDCD", "*", "*", "partially joined a concurrence"},

	joinconcurrencedissent = {"#CC99CC", "", "", "joined a concurrence dissent"},

	partjoinconcurrencedissent = {"#CC99CC", "*", "*", "partially joined a concurrence dissent"},

	joindissent = {"#EE9572", "", "", "joined a dissent"},

	partjoindissent = {"#EE9572", "*", "*", "partially joined a dissent"},

	didnotparticipate = {"white", "", "", "did not participate"},

	statement = {"gray", "", "", "statement"},

	statementwithoutopinion = {"gray", "", "-", "statement without opinion"},

	joinstatement = {"silver", "", "", "joined a statement"},

	partjoinstatement = {"silver", "*", "*", "partially joined a statement"},

	def = "",

}



function p.main(frame)

	local pframe = frame:getParent()

	local args = pframe.args

	

	if args.case then args.case = "''[[" .. args.case .. "]]''" else args.case = nil end

	if args"case1" then args"case1" = "''" .. args"case1" .. "''" else args"case1" = nil end

	if args"case-article" then args"case-article" = "''[[" .. args"case-article" .. "|" .. args"case-display" .. "]]''" 

		else args"case-article" = nil end

	if args.page ~= nil and mw.text.trim(args.page) ~= "" then args.page = args.page else args.page = "___" end

	local entry = mw.html.create("tr")

	entry

		:tag("td")

		:css({

			width = "20px",

			"vertical-align" = "center"

			})

		:wikitext(args"#"])

		:newline()

		:newline()

		:tag("td")

			:css({

				width = "200px",

				"vertical-align" = "top"

				})

			:tag("small")

				:wikitext((args.case or "") .. (args"case1" or "") .. (args"case-article" or "") .. "," .. (args.note or "") .. 

					' <span class="nowrap">' .. args.volume .. " U.S. " .. (args.page) .. '</span>')

				:done()

			:done()

		:tag("td")

			:css({

				"vertical-align" = "top",

				"text-align" = "right"

				})

			:tag("small")

				:wikitext(args"argue-date" or "")

				:done()

			:done()

		:tag("td")

			:css({

				"vertical-align" = "top",

				"text-align" = "right"

				})

			:tag("small")

				:wikitext(args"decision-date"])

	

	local width = {

		1 = "74px",

		2 = "36px",

		3 = "23.33px",

		4 = "17px",

		5 = "13.2px",

	}

	local x = 1

	while x < 9 or args"justice" .. x .. "-opinion1" ~= nil do

		local z = 1

		local entrysupp = mw.html.create("td")

		entrysupp

			:css({

				padding = "0px",

				margin = "0px",

				"vertical-align" = "top",

				})

			:attr("data-sort-value", args"justice" .. x .. "-sortcode"])

		local entrysuppend = '</td>'

		if args"justice" .. x .. "-opinion1" ~= nil then

			local subtable = mw.html.create("table")

			subtable

			:css({

				width = "100%",

				height = "3.7em",

				margin = "0px",

				})

			:attr("cellspacing", "0")

			while z < 6 and args"justice" .. x .. "-opinion" .. z ~= nil and mw.text.trim(args"justice" .. x .. "-opinion" .. z]) ~= "" do

				z = z + 1

			end

			local i = 1

			while i < 6 and args"justice" .. x .. "-opinion" .. i ~= nil and mw.text.trim(args"justice" .. x .. "-opinion" .. i]) ~= "" do

				if string.find(mw.text.trim(args"justice" .. x .. "-opinion" .. i]), "%d$") then

					opiniontext = string.match(args"justice" .. x .. "-opinion" .. i], "%d") .. (palette

						string.match(args"justice" .. x .. "-opinion" .. i], "%a+")][2 or "")

				else

					opiniontext = (palettemw.text.trim(args"justice" .. x .. "-opinion" .. i]) or "def"][3 or "")

				end

				opinion = mw.text.trim(args"justice" .. x .. "-opinion" .. i], "%d$")

				arialabel = 'aria-label="justice ' .. x .. ' ' .. paletteopinion][4 .. '" '

				secuential = '<td ' .. arialabel .. 'style="height: 3.7em; min-width:' .. widthz-1 .. '; text-align:center; outline: solid 0.5px darkgray;' ..  

				'background-color:' .. palette[(string.match(args"justice" .. x .. "-opinion" .. i], "%a+") or "def")][1 .. '">' .. 

				opiniontext .. '</td>'

				subtable:node(secuential)

				i = i + 1

			end

			entrysupp:node(subtable)

		end

		entry:node(entrysupp)

		entry:node(entrysuppend)

		x = x + 1

	end

	return tostring(entry)

end



return p
From Wikipedia, the free encyclopedia


local p = {}



-- Color palette and wikitext for the opinion arguments. Each group is only mentioned once, e.g. majority stands for majority, 

-- majority1, majority2, majority3, majority4 and majority5

-- The color comes first in the table, then wikitext for numbered values, then wikitext for non-numbered values, 

-- and finally, human-friendly text that is output to screen reading software used by blind and low vision users.

-- Numbers in the wikitext are taken from the values themselves (e.g. majority1 has the wikitext "1" plus whatever wikitext that is

-- mentioned here.

-- Examples: plurality has the wikitext of "&#42;" and the color "#00CD00"

--           plurality1 has the wikitext of "1*" - "1" is taken from the value itself and "*" comes from this table. It has 

--           the color "#00CD00".

--           Both plurality and plurality1 output the text "delivered the court's opinion" to screen readers.

   

local palette = {

	majority = {"#00CD00", "", "", "delivered the court's opinion"},

	plurality = {"#00CD00", "*", "&#42;", "delivered the court's opinion"},

	concurrence = {"#00B2EE", "", "", "filed a concurrence"},

	concurrencewithoutopinion = {"#79CDCD", "", "-", "filed a concurrence"},

	concurrencedissent = {"#B23AEE", "", "", "filed a concurrence dissent"},

	concurrencedissentwithoutopinion = {"#CC99CC", "", "-", "filed a concurrence dissent"},

	dissent = {"red", "", "", "filed a dissent"},

	dissentwithoutopinion = {"#EE9572", "", "-", "filed a dissent without opinion"},

	joinmajority = {"#93DB70", "", "", "joined the court's opinion"},

	partjoinmajority = {"#93DB70", "*", "&#42;", "partially joined the court's opinion"},

	joinplurality = {"#93DB70", "", "", "joined the court's opinion"},

	partjoinplurality = {"#93DB70", "*", "&#42;", "partially joined the court's opinion"},

	joinconcurrence = {"#79CDCD", "", "", "joined a concurrence"},

	partjoinconcurrence = {"#79CDCD", "*", "&#42;", "partially joined a concurrence"},

	joinconcurrencedissent = {"#CC99CC", "", "", "joined a concurrence dissent"},

	partjoinconcurrencedissent = {"#CC99CC", "*", "&#42;", "partially joined a concurrence dissent"},

	joindissent = {"#EE9572", "", "", "joined a dissent"},

	partjoindissent = {"#EE9572", "*", "&#42;", "partially joined a dissent"},

	didnotparticipate = {"white", "", "", "did not participate"},

	statement = {"gray", "", "", "statement"},

	statementwithoutopinion = {"gray", "", "-", "statement without opinion"},

	joinstatement = {"silver", "", "", "joined a statement"},

	partjoinstatement = {"silver", "*", "&#42;", "partially joined a statement"},

	def = "",

}



function p.main(frame)

	local pframe = frame:getParent()

	local args = pframe.args

	

	if args.case then args.case = "''[[" .. args.case .. "]]''" else args.case = nil end

	if args"case1" then args"case1" = "''" .. args"case1" .. "''" else args"case1" = nil end

	if args"case-article" then args"case-article" = "''[[" .. args"case-article" .. "|" .. args"case-display" .. "]]''" 

		else args"case-article" = nil end

	if args.page ~= nil and mw.text.trim(args.page) ~= "" then args.page = args.page else args.page = "___" end

	local entry = mw.html.create("tr")

	entry

		:tag("td")

		:css({

			width = "20px",

			"vertical-align" = "center"

			})

		:wikitext(args"#"])

		:newline()

		:newline()

		:tag("td")

			:css({

				width = "200px",

				"vertical-align" = "top"

				})

			:tag("small")

				:wikitext((args.case or "") .. (args"case1" or "") .. (args"case-article" or "") .. "," .. (args.note or "") .. 

					' <span class="nowrap">' .. args.volume .. " U.S. " .. (args.page) .. '</span>')

				:done()

			:done()

		:tag("td")

			:css({

				"vertical-align" = "top",

				"text-align" = "right"

				})

			:tag("small")

				:wikitext(args"argue-date" or "")

				:done()

			:done()

		:tag("td")

			:css({

				"vertical-align" = "top",

				"text-align" = "right"

				})

			:tag("small")

				:wikitext(args"decision-date"])

	

	local width = {

		1 = "74px",

		2 = "36px",

		3 = "23.33px",

		4 = "17px",

		5 = "13.2px",

	}

	local x = 1

	while x < 9 or args"justice" .. x .. "-opinion1" ~= nil do

		local z = 1

		local entrysupp = mw.html.create("td")

		entrysupp

			:css({

				padding = "0px",

				margin = "0px",

				"vertical-align" = "top",

				})

			:attr("data-sort-value", args"justice" .. x .. "-sortcode"])

		local entrysuppend = '</td>'

		if args"justice" .. x .. "-opinion1" ~= nil then

			local subtable = mw.html.create("table")

			subtable

			:css({

				width = "100%",

				height = "3.7em",

				margin = "0px",

				})

			:attr("cellspacing", "0")

			while z < 6 and args"justice" .. x .. "-opinion" .. z ~= nil and mw.text.trim(args"justice" .. x .. "-opinion" .. z]) ~= "" do

				z = z + 1

			end

			local i = 1

			while i < 6 and args"justice" .. x .. "-opinion" .. i ~= nil and mw.text.trim(args"justice" .. x .. "-opinion" .. i]) ~= "" do

				if string.find(mw.text.trim(args"justice" .. x .. "-opinion" .. i]), "%d$") then

					opiniontext = string.match(args"justice" .. x .. "-opinion" .. i], "%d") .. (palette

						string.match(args"justice" .. x .. "-opinion" .. i], "%a+")][2 or "")

				else

					opiniontext = (palettemw.text.trim(args"justice" .. x .. "-opinion" .. i]) or "def"][3 or "")

				end

				opinion = mw.text.trim(args"justice" .. x .. "-opinion" .. i], "%d$")

				arialabel = 'aria-label="justice ' .. x .. ' ' .. paletteopinion][4 .. '" '

				secuential = '<td ' .. arialabel .. 'style="height: 3.7em; min-width:' .. widthz-1 .. '; text-align:center; outline: solid 0.5px darkgray;' ..  

				'background-color:' .. palette[(string.match(args"justice" .. x .. "-opinion" .. i], "%a+") or "def")][1 .. '">' .. 

				opiniontext .. '</td>'

				subtable:node(secuential)

				i = i + 1

			end

			entrysupp:node(subtable)

		end

		entry:node(entrysupp)

		entry:node(entrysuppend)

		x = x + 1

	end

	return tostring(entry)

end



return p

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook