Line 1: |
Line 1: |
− | {{HPB-SB-pages}} | + | local sb = {} -- functions package for HPB Scrapbooks |
| + | |
| + | function sb.item_id2( frame ) |
| + | local id = frame.args['volume'] .. '-' .. frame.args['page'] .. '-' .. frame.args['item'] |
| + | return id |
| + | end |
| + | |
| + | -- Create unique ID for the item, which consist of: Volume-Page-Item_on_page |
| + | -- ID example: 01-017-03 |
| + | -- Call example: {{#invoke: SB | item_id | volume=1 | page=17 | item=3 }} |
| + | -- Values: volume=1..99, page=1..999, item=1..99 |
| + | function sb.item_id( frame ) |
| + | local vNum = string.format("%.2d", frame.args['volume']) |
| + | local iNum = string.format("%.2d", frame.args['item']) |
| + | local p_int, p_frac = math.modf(frame.args['page']) |
| + | local pNum = string.format("%.3d", p_int) |
| + | |
| + | --mw.log('int= '.. p_int .. ', frac= ' .. p_frac) |
| + | if p_frac > 0 then |
| + | str = tostring(p_frac) |
| + | pNum = pNum .. '.' .. string.sub(str,3,5) |
| + | end |
| + | |
| + | local id = vNum .. '-' .. pNum .. '-' .. iNum |
| + | return id |
| + | end |
| + | |
| + | -- This function does not work yet |
| + | function sb.int2roman( arabic_number ) |
| + | local roman_number = arabic_number --mathroman.int2roman(arabic_number) |
| + | print (roman_number) |
| + | end |
| + | |
| + | return sb |