add some support for customizing product options
[bse.git] / site / templates / admin / edit_prodopts.tmpl
index 1534935..6de8a66 100644 (file)
 <span id="prodoptvaluemove<:= loop.current.id :>"><:.call "make_arrows", down_url: downurl, up_url: upurl :></span>
 <:.end define :>
 
+<:.define addform_value_entry:>
+<div class="valueentry<:= index mod 2 == 0 ? "" : " odd":>">
+  <span><input type="text" name="value<:= index :>" value="<:= cgi.param("value" _ index) :>" maxlength="255" class="editor_field" title="Enter some values here" /></span>
+  <span><input type="radio" name="default" value="value<:= index :>"></span>
+  <span><:.call "error_img", field: "value" _ index:></span>
+</div>
+<:.end define:>
+<:.define addform_value_head:>
+<div class="valueentry"><span>Values</span><span>Default</span></div>
+<:.end define:>
+<:.define value_entry_menu :>
+<:.if request.user_can("bse_edit_prodopt_edit", article):>
+<div class="valueentrymenu">
+<a href="<:script:>?id=<:= product.id:>&amp;value_id=<:= dboptionvalue.id:>&amp;a_edit_option_value=1">Edit</a>
+<a href="<:script:>?id=<:= product.id:>&amp;value_id=<:= dboptionvalue.id:>&amp;a_confdel_option_value=1">Delete</a>
+<:.call "dboptionvalue_move":>
+<:.end if :>
+</div>
+<:.end define :>
+<:.define value_entry:>
+<div id="valentry<:= dboptionvalue.id:>" class="valueentry<:= loop.index mod 2 == 1 ? " odd" : "":>">
+<span id="prodoptvalue<:= dboptionvalue.id:>"><:= dboptionvalue.value:></span>
+<:.if dboptionvalue.id == dboption.default_value:>(default)<:.end if:>
+<:.call "value_entry_menu":>
+</div>
+<:.end define:>
+<:include admin/edit_prodopt_custom.tmpl optional:>
+
 <:.set dboptions = [ product.db_options ] :>
 <:.if dboptions.size:>
 <h2>Product options</h2>
 <div id="vallist<:= dboption.id:>" class="prodoptvalues">
 <:.for dboptionvalue in [ dboption.values ] :>
 <:.set dbovloop = loop :>
-<div id="valentry<:= dboptionvalue.id:>" class="valueentry<:= dbovloop.index mod 2 == 1 ? " odd" : "":>"><span id="prodoptvalue<:= dboptionvalue.id:>"><:= dboptionvalue.value:></span>
-<:.if dboptionvalue.id == dboption.default_value:>(default)<:.end if:>
-<:.if request.user_can("bse_edit_prodopt_edit", article):>
-<div class="valueentrymenu">
-<a href="<:script:>?id=<:= product.id:>&amp;value_id=<:= dboptionvalue.id:>&amp;a_edit_option_value=1">Edit</a>
-<a href="<:script:>?id=<:= product.id:>&amp;value_id=<:= dboptionvalue.id:>&amp;a_confdel_option_value=1">Delete</a>
-<:.call "dboptionvalue_move", loop:dbovloop:>
-</div>
-<:.end if :>
-</div>
+<:.call "value_entry", "loop":dbovloop:>
 <:.end for :>
 </div>
 <:.if request.user_can("bse_edit_prodopt_edit", article) :>
 </div>
 <:.end if:>
 <:.if request.user_can("bse_edit_prodopt_add", article) :>
-<:.define addform_value_entry:>
-<div class="valueentry<:= index mod 2 == 0 ? "" : " odd":>"><span><input type="text" name="value<:= index :>" value="<:= cgi.param("value" _ index) :>" maxlength="255" class="editor_field" title="Enter some values here" /></span><span><input type="radio" name="default" value="value<:= index :>"></span><span><:.call "error_img", field: "value" _ index:></span></div>
-<:.end define:>
-<:.define addform_value_head:>
-<div class="valueentry"><span>Values</span><span>Default</span></div>
-<:.end define:>
-<:include admin/edit_prodopt_custom.tmpl optional:>
 <div id="addoptionform" class="prodopt">
 <form action="<:script:>" method="post">
 <:csrfp admin_add_option hidden:>