anchor.diff:    element_panel:render_element(P).
   
   control_event(_Cid, #upload{} = Tag) -> element_upload:wire(Tag);
  +control_event(Cid, {query_file, Root, Dir, File, MimeType})->
  +  Name = binary_to_list(File),
  +  Size = case file:read_file_info(filename:join([Root,Dir,Name])) of 
  +    {ok, FileInfo} ->
  +      wf:wire(wf:f("$('#~s').parent('.file_upload').after(\"<img src='~s'>\").remove();", [Cid, filename:join([Dir, Name])])),
  +      FileInfo#file_info.size;
  +    {error, _} -> 0 end,
  +  {exist, Size};
   control_event(Cid, {Root, Dir, File, MimeType, Data, ActionHolder, PostWrite, ImgTool, Target, Size}) ->
     Full = filename:join([Root, Dir, File]),
   
  
positive.code: -author('doxtop@synrc.com').
  -compile(export_all).
  -include_lib("n2o/include/wf.hrl").
  
  render_element(R = #htmlbox{})->
    Id = case R#htmlbox.id of undefined-> wf:temp_id(); I -> I end,
  
negative.code:   ToolbarId = wf:temp_id(),
    Html = R#htmlbox.html,
    Root = case R#htmlbox.root of undefined -> code:priv_dir(n2o); Path -> Path end,
    Up =  #upload{id=wf:temp_id(), dir=R#htmlbox.dir, delegate=element_htmlbox, delegate_query=element_htmlbox, root=Root, post_write=R#htmlbox.post_write, img_tool=R#htmlbox.img_tool, post_target=PreviewId, size=R#htmlbox.size},
    UploadPostback = wf_event:generate_postback_script(Up, ignore, Id, element_htmlbox, control_event, <<"{'msg': uid}">>),
  
    wf:wire(wf:f(
  