title: Nitrogen - Dynamically creating Events
body: <p>I am a beginner with Erlang/Nitrogen.
  I am toying with a bidding system back by a mnesia db.
  On my index page I have the following code and the various items and their properties get created dynamically from the database:</p>
  
  <pre><code>
  %% -*- mode: nitrogen -*-
  -module (index).
  -compile(export_all).
  -include_lib("nitrogen/include/wf.hrl").
  
  main() -> #template { file="./site/templates/bare.html" }.
  
  title() -> "Meir Panim Gala Dinner silent auction".
  
  body() ->
  
    Header = [#panel{id=header, body=[#h1{text="Meir Panim Gala Dinner silent auction"}]}],
  
    {atomic, Items} = item_database:get_all(),
    Elements = lists:map(fun(X) ->
      {item, Index, Title, _, Picture, _, _, Reserve, CurrentBid} = X,    
      #panel{id=items, body=[
                      #span{id=title, text=Title},
                      #image{id=image, image= "images/" ++ Picture},
                      #span{id=currentbid, text="Current bid: £" ++ integer_to_list(CurrentBid)},
                      #span{id=reserve, text="Reserve: £" ++ wf:to_list(Reserve)},
                      #link{id=showalert, text="More info / Place your bid", postback="showalert"++integer_to_list(Index)}
                    ]
            }
      end, Items),
    wf:f([Header, Elements]).
  
  {atomic, Items} = item_database:get_all(),
    Actions = lists:map(fun(X) ->
      {item, Index, _, _, _, _, _, _, _} = X,    
      event("showalert"++integer_to_list(Index)) ->
        wf:wire(#alert{text="action "++integer_to_list(Index)++" clicked"})
    end, Items). 
  </code></pre>
  
  <p>I tried to create my events in the same manner but it was not working.
  In my code the alerts will be replaced with lightboxes containing a form to accept bids.
  Please help and tell me what I am doing wrong.</p>