Sandbox91

From Metabolomics.JP
(Difference between revisions)
Jump to: navigation, search
Line 3: Line 3:
 
--%% 前処理 %%--
 
--%% 前処理 %%--
 
local list = {} -- データリスト
 
local list = {} -- データリスト
 +
local levs = {} -- 各データのレベル
 
local flag = {} -- 最下層のアイテムかどうか
 
local flag = {} -- 最下層のアイテムかどうか
 
local i, j, data, index, leve, prev
 
local i, j, data, index, leve, prev
Line 15: Line 16:
 
   --%% データを配列へ格納 %%--
 
   --%% データを配列へ格納 %%--
 
   list[i] = data
 
   list[i] = data
 +
  levs[i] = level
 +
  flag[i] = 0
  
 
   --%% 最下層を調べ、最下層ならflagをセットする %%--
 
   --%% 最下層を調べ、最下層ならflagをセットする %%--
   if(prev > level) then
+
   if(prev < level) then
 
     index = i
 
     index = i
   elseif(prev < level) then
+
   elseif(prev > level) then
 
     for j = i-1, index, -1 do
 
     for j = i-1, index, -1 do
       flag[j] = true
+
       flag[j] = 1
 
     end
 
     end
 
     index = i
 
     index = i
Line 29: Line 32:
 
   i = i + 1
 
   i = i + 1
  
--  print(line .. "-" .. string.len(data) .. "-" .. string.len(line) .. "<br>")
+
--  print(line .. "-" .. string.len(data) .. "-" .. string.len(line) .. "<br>") --%% チェック用
 +
end
 +
--%% 最後のアイテムを処理する %%--
 +
for j = i-1, index, -1 do
 +
  flag[j] = 1
 
end
 
end
  
 
--%% 表示処理 %%--
 
--%% 表示処理 %%--
 +
 +
--%% できればここに目次を作成したい %%--
 +
 +
local maxn, margin;
 +
maxn = table.maxn(list)
 +
for i = 0, maxn do
 +
  --%% levelに応じたマージンを設定する %%--
 +
  margin = levs[i] * 24
 +
  print('<span style="margin-left: ' .. margin .. 'px">')
 +
 +
  --%% 最下層ならチェックボックスを、そうでないならそのまま表示する %%--
 +
  if(flag[i] == 1) then
 +
    -- <nowiki>{{#formtag:input|type="checkbox" value="data" name="list" id="data"}}{{#formtag:label|for="data"|data}}</nowiki>
 +
    print('{{#form' .. 'tag:input|type="checkbox" value="' .. list[i] .. '" name="list" id="' .. list[i] .. '"}}{{#form' .. 'tag:label|for="' .. list[i] .. '"|' .. list[i] .. '}}<br>')
 +
  else
 +
    print(list[i] .. "<br>")
 +
  end
 +
 +
  print("</span>")
 +
end
 +
 
|{{#searchline:-|Index|{{#var:page}} }} }}
 
|{{#searchline:-|Index|{{#var:page}} }} }}

Revision as of 23:16, 21 January 2009


Personal tools
Namespaces

Variants
Actions
Navigation
metabolites
Toolbox