[% MACRO box(part) BLOCK %]
<table class="paraframe_box" style="background: $part.border"><tr><td>
<table style="border-width: ${part.width}px"><tr><td style="background: $part.bg">
   [% IF part.title %]<h1>$part.title</h1>[% END %]
<pre>[% part.message | html %]</pre>
[% IF part.context %]
   <em>Context (line [% part.context_line %]):</em>
   <pre>[% part.context | html %]</pre>
[% END %]
</table></table>
[% END %]


[% MACRO step(label, template, run) BLOCK %]
   [% IF template %]
      [% go(label, template, run) %]
      [%+ backstep %]
      [% IF route.size %]
         [%+ regret %]
      [% END %]
   [% ELSIF next_action or next_template %]
      [% actionstep(label) %]
   [% ELSE %]
      [% nostep(label) %]
   [% END %]
[% END %]

[% MACRO searchstep(label) BLOCK;
      DEFAULT label='Sök';
      submit(label);
      IF route.caller_is_next_step;
         regret;
      ELSE;
         backstep('Fortsätt med nästa sak', 1);
         IF route.size;
            regret;
         END;
      END;
   END;
%]

[% MACRO actionstep(label) BLOCK;
      UNLESS label;
         IF uri_path(form_action) == me;
            label = "Spara";
         ELSE;
            label = "Spara och fortsätt";
         END;
      END;
      submit(label);
      IF route.caller_is_next_step;
         regret;
      ELSE;
         backstep;
         IF route.size;
            regret;
         END;
      END;
   END;
%]

[% MACRO nostep(label) BLOCK;
      DEFAULT label='Fortsätt med nästa sak';
      IF route.caller_is_next_step;
         backstep(label);
      ELSIF route.size;
         backstep(label);
         regret('Hoppa över nästa sak');
      ELSE;
         backstep(label);
      END;
   END;
%]


[% MACRO regret(label) BLOCK %]
[% DEFAULT
       	label = 'Backa'
%]
   [% go(label, undef, 'skip_step', href_class=href_class) %]
[% END %]



[% MACRO remove_step(label) BLOCK %]
[% DEFAULT
       	label = 'Ta bort steg'
%]
   [% go(label, me, 'remove_step', href_class=href_class) %]
[% END %]



[% MACRO backstep(label, break_path) BLOCK %]
[% DEFAULT
       	label = 'Hoppa över'
%]
   [% go(label, undef, 'next_step', href_class=href_class) %]
   [% IF break_path %]
      [% hidden('break_path', break_path) %]
   [% END %]
[% END %]



[% MACRO hr BLOCK %]
<hr width="5%">
[% END %]



[% MACRO select(name, current, data, valkey, tagkey, header) BLOCK %]
   [%- IF q.param(name) %]
      [% current = q.param(name) %]
   [% END %]
  <select name="[% name|html %]">
  [%+ IF valkey %]
     [% DEFAULT tagkey = valkey -%]
     [%- IF header %]<option value="">[% header|html %]</option>[% END -%]
     [% FOREACH row IN data %]
        <option value="[% row.$valkey %]"[% ' selected' IF row.$valkey == current %]>[% row.$tagkey %]</option>
     [%+ END %]
  [% ELSE %]
     [% FOREACH key IN data.keys.sort %]
        <option value="[% key %]"[% ' selected' IF key == current %]>[% data.$key %]</option>
     [%+ END %]
  [% END %]
  </select>
[% END %]



[% MACRO tr2 BLOCK %]
   [% IF loop.count MOD 2 %]
   <tr class="odd">
   [% ELSE %]
   <tr class="even">
   [% END %]
[% END %]

[% MACRO sort(name, value, defdir) BLOCK;
   DEFAULT value = name;
   DEFAULT defdir = 'asc';
   DEFAULT direction = defdir;
   IF order == value;
      IF direction == 'asc';
         direc = 'desc';
         dirimg = '/pf/images/arrow.down.png';
      ELSE;
	 direc = 'asc';
	 dirimg = '/pf/images/arrow.up.png';
      END;
      class="selected";
   ELSE;
      direc = defdir;
   END;
   url = forward_url( me, order=value, direction=direc, page=1, use_cached=0 );
%]
   <a href="$url" class="$class">$name
[% IF dirimg %]
   <img alt="$direction" src="$home$dirimg">
[% END %]
</a>
[% END;
%]

[% BLOCK expand %]
   [% DEFAULT global.paraframe_formcount=0 %]
   [% global.paraframe_formcount = global.paraframe_formcount + 1 %]
   [% paraframe_display='none' %]
   [% paraframe_label_display='block' %]
   [% DEFAULT label = "Instruktion" %]
   [% DEFAULT label_show = "Visa ${label}..." %]
   [% DEFAULT label_hide = "Dölj ${label}..." %]
<div class="paraframe_expand"><a href="javascript:showhide('paraframe_fid_[% global.paraframe_formcount %]');showhide('paraframe_fid_[% global.paraframe_formcount %]_label');" id="paraframe_fid_[% global.paraframe_formcount %]_label" style="display:[% paraframe_label_display %]">[% label_show %]</a></div>
<div class="paraframe_expanded" id="paraframe_fid_$global.paraframe_formcount" style="display:$paraframe_display">
<a href="javascript:showhide('paraframe_fid_[% global.paraframe_formcount %]');showhide('paraframe_fid_[% global.paraframe_formcount %]_label');">[% label_hide %]</a>
$content
</div>
[% END %]

[% BLOCK imgexpand %]
[%
   DEFAULT global.paraframe_formcount=0;
   global.paraframe_formcount = global.paraframe_formcount + 1;
   paraframe_display='none';
   paraframe_label_display='block';
   DEFAULT label_expand_img = "$home/pf/images/button.expand.down.gif";
   DEFAULT label_hide_img = label_expand_img;
   DEFAULT id_label = "paraframe_fid_${global.paraframe_formcount}_label";
   DEFAULT id_block = "paraframe_fid_${global.paraframe_formcount}";
   DEFAULT label = "";
   DEFAULT class_expand = "paraframe_imgexpand";
   DEFAULT class_expanded = "paraframe_imgexpanded";
%]
<span class="$class_expand" id="$id_label"><a href="javascript:showhide('$id_block')">$label <img alt="v" src="$label_expand_img"></a></span>
<div class="$class_expanded" id='$id_block' style="display:$paraframe_display">
$content
</div>
[% END %]
