Module:Infobox ET: Difference between revisions

Fix disappearing prime factorizations
Don't conduct prime test in manual input mode
Line 62: Line 62:
categories = categories .. '[[Category:' .. et.suffix .. '|' .. string.rep ('#', string.len (et.size)) .. ']]'
categories = categories .. '[[Category:' .. et.suffix .. '|' .. string.rep ('#', string.len (et.size)) .. ']]'
end
end
 
-- prime test
-- prime factorization
local prime = ""
local prime_factorization_override = frame.args['Prime factorization']
if u.is_prime(et.size) then
local prime_factorization = ""
prime = " (prime)"
if not value_provided(prime_factorization_override) then
if rat.eq(et.equave, 2) then
prime_factorization = u._prime_factorization(et.size)
categories = categories .. '[[Category:Prime EDO|' .. string.rep ('#', string.len (et.size)) .. ']]'
if u.is_prime(et.size) then
prime_factorization = prime_factorization .. " (prime)"
if rat.eq(et.equave, 2) then
categories = categories .. '[[Category:Prime EDO|' .. string.rep ('#', string.len (et.size)) .. ']]'
end
end
end
else
prime_factorization = prime_factorization_override
end
end
 
-- zeta test
-- zeta test
local zeta_override = frame.args['Zeta']
local zeta_override = frame.args['Zeta']
Line 80: Line 86:
zeta_switch = rat.eq(et.equave, 2) and ET.is_zeta(et)
zeta_switch = rat.eq(et.equave, 2) and ET.is_zeta(et)
end
end
 
-- navigation arrows
-- navigation arrows
local increment = 1
local increment = 1
Line 114: Line 120:
-- display
-- display
local infobox_data = {}
local infobox_data = {}
 
local prime_factorization_override = frame.args['Prime factorization']
table.insert(infobox_data, {
if not value_provided(prime_factorization_override) then
    'Prime factorization',
    table.insert(infobox_data, {
    prime_factorization
    'Prime factorization',
    })
    u._prime_factorization(et.size) .. prime
    })
else
table.insert(infobox_data, {
    'Prime factorization',
    prime_factorization_override .. prime
    })
end


table.insert(infobox_data, {
table.insert(infobox_data, {