Page MenuHomeIn-Portal Phabricator

orders_edit_items.tpl
No OneTemporary

File Metadata

Created
Thu, Oct 29, 7:26 AM

orders_edit_items.tpl

<inp2:m_RequireLogin permissions="in-commerce:orders.view" system="1"/>
<inp2:m_include t="incs/header" nobody="yes"/>
<body topmargin="0" leftmargin="8" marginheight="0" marginwidth="8" bgcolor="#FFFFFF">
<inp2:m_RenderElement name="section_header" prefix="ord" icon="icon46_orders" module="in-commerce" title="!la_title_Orders!"/>
<inp2:m_include t="in-commerce/orders/orders_edit_tabs"/>
<inp2:m_RenderElement name="blue_bar" prefix="ord" title_preset="orders_edit_items" module="in-commerce" icon="icon46_orders"/>
<!-- ToolBar --->
<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0">
<tbody>
<tr>
<td>
<script type="text/javascript">
a_toolbar = new ToolBar();
a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() {
submit_event('ord','<inp2:ord_SaveEvent/>');
}
) );
a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() {
submit_event('ord','OnCancelEdit');
}
) );
a_toolbar.AddButton( new ToolBarSeparator('sep1') );
a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() {
go_to_id('ord', '<inp2:ord_PrevId/>');
}
) );
a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() {
go_to_id('ord', '<inp2:ord_NextId/>');
}
) );
a_toolbar.AddButton( new ToolBarSeparator('sep2') );
function edit(){
std_edit_temp_item('orditems', 'in-commerce/orders/order_product_edit');
}
<inp2:m_if check="ord_OrderEditable">
//Order items related:
a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_Add_Items" escape="1"/>',
function() {
openSelector('orditems', '<inp2:adm_SelectorLink prefix="ord" selection_mode="single" tab_prefixes="p"/>', '', null, 'OnSaveItems');
} ) );
a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>',
function() {
std_delete_items('orditems')
} ) );
a_toolbar.AddButton( new ToolBarButton('recalculate_order', '<inp2:m_phrase label="la_RecalculateOrder"/>',
function() {
submit_event('ord', 'OnRecalculateItems');
} ) );
a_toolbar.AddButton( new ToolBarSeparator('sep3') );
</inp2:m_if>
a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() {
show_viewmenu(a_toolbar,'view');
}
) );
a_toolbar.Render();
<inp2:m_if check="ord_Status" is_not="incomplete">
a_toolbar.HideButton('arrange');
</inp2:m_if>
<inp2:m_if check="ord_IsSingle" >
a_toolbar.HideButton('prev');
a_toolbar.HideButton('next');
a_toolbar.HideButton('sep1');
//a_toolbar.HideButton('sep2');
<inp2:m_else/>
<inp2:m_if check="ord_IsLast" >
a_toolbar.DisableButton('next');
</inp2:m_if>
<inp2:m_if check="ord_IsFirst" >
a_toolbar.DisableButton('prev');
</inp2:m_if>
</inp2:m_if>
// stuff for updating extended price based on price & quantity entered
function CalculateSubtotal($prefix_special, $price_field, $result_id) {
if (typeof(Grids[$prefix_special]) != 'object') {
return false;
}
var $sub_total = 0;
var $grid_items = Grids[$prefix_special].Items;
for (var $i in $grid_items) {
$id = $grid_items[$i].ItemId;
var $price_control = document.getElementById($prefix_special + '['+$id+'][' + $price_field + ']');
$sub_total += NumberFormatter.Parse($price_field == 'ExtendedPrice' ? $price_control.innerHTML : $price_control.value);
}
document.getElementById($result_id).innerHTML = NumberFormatter.Format($sub_total.toFixed(2));
}
function UpdateExtendedPrice($prefix_special, $id)
{
<inp2:m_if check="ord_OrderEditable">
// 1. calculate current row extended price
var $qty = NumberFormatter.Parse(document.getElementById($prefix_special+'['+$id+'][Quantity]').value);
var $price = NumberFormatter.Parse(document.getElementById($prefix_special+'['+$id+'][Price]').value);
var $ext_price = Math.round($qty*$price*100)/100;
document.getElementById($prefix_special+'['+$id+'][ExtendedPrice]').innerHTML = NumberFormatter.Format($ext_price.toFixed(2));
// 2. recalculate subtotal
CalculateSubtotal($prefix_special, 'ExtendedPrice', 'order_subtotal');
</inp2:m_if>
// 3. recalculate return total
CalculateSubtotal('orditems', 'ReturnAmount', 'order_returntotal');
}
</script>
</td>
</tr>
</tbody>
</table>
<inp2:m_DefineElement name="option_value_element">
<inp2:m_param name="value"/> <inp2:m_if check="m_ParamEquals" name="price" value=""><inp2:m_else/> (<inp2:m_param name="sign"/><inp2:m_param name="price"/> <inp2:m_param name="price_type"/>)</inp2:m_if>
<inp2:m_if check="m_ParamEquals" name="is_last" value="1"><inp2:m_else/>, </inp2:m_if>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="option_element">
<inp2:m_if check="m_ParamEquals" param="type" value="6"> <!-- checkboxes - multiple -->
<strong><inp2:m_param name="option"/>:</strong>
<inp2:PrintOptionValues render_as="option_value_element"/>
<inp2:m_else/>
<strong><inp2:m_param name="option"/>:</strong> <inp2:m_param name="value"/>
<inp2:m_if check="m_ParamEquals" name="price" value=""><inp2:m_else/> (<inp2:m_param name="sign"/><inp2:m_param name="price"/> <inp2:m_param name="price_type"/>)</inp2:m_if>
</inp2:m_if><br/>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="option_value_element_no_price">
<inp2:m_param name="value"/>
<inp2:m_if check="m_ParamEquals" name="is_last" value="1"><inp2:m_else/>, </inp2:m_if>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="option_element_no_price">
<inp2:m_if check="m_ParamEquals" param="type" value="6"> <!-- checkboxes - multiple -->
<strong><inp2:m_param name="option"/>:</strong>
<inp2:PrintOptionValues render_as="option_value_element_no_price"/>
<inp2:m_else/>
<strong><inp2:m_param name="option"/>:</strong> <inp2:m_param name="value"/>
</inp2:m_if><br/>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="product_image">
<img src="<inp2:m_param name="img_path" />" title="<inp2:m_param name="alt" />" alt="<inp2:m_param name="alt" />" <inp2:m_param name="img_size" /> border="0" /><br/>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_productname_td" format="" module="">
<td valign="top" class="text">
<table border="0" cellpadding="0" cellspacing="0" class="grid_id_cell">
<tr>
<td valign="top"><input type="checkbox" name="<inp2:{$PrefixSpecial}_InputName field="$IdField" IdField="$IdField"/>" id="<inp2:{$PrefixSpecial}_InputName field="$IdField" IdField="$IdField"/>"></td>
<inp2:m_if check="m_GetConfig" name="ShowProductImagesInOrders">
<td valign="top" width="120">
<inp2:p_Image render_as="product_image" thumbnail="1" DefaultImage="../../in-commerce/admin_templates/img/itemicons/no_picture_list.gif" MaxWidth="120" MaxHeight="120" DefaultWidth="120" />
</td>
<inp2:m_else/>
<td valign="top"><img src="<inp2:ModulePath module="$module"/>img/itemicons/<inp2:{$PrefixSpecial}_ItemIcon grid="$grid"/>"></td>
</inp2:m_if>
<td valign="top">
<inp2:Field field="$field" first_chars="50"/> (<inp2:Field field="ProductId"/>)
<inp2:m_if check="ord_BackOrderFlag"><span class="error"><inp2:m_Phrase label="la_ItemBackordered"/></span></inp2:m_if>
<inp2:m_if check="HasOptions">
<br/>
<small>
<inp2:m_if check="FieldEquals" field="OptionsSelectionMode" value="0">
<!-- selectable options -->
<inp2:PrintOptions render_as="option_element"/>
<inp2:m_else/>
<!-- listed combinations -->
<inp2:PrintOptions render_as="option_element_no_price"/>
</inp2:m_if>
</small>
</inp2:m_if>
</td>
</tr>
</table>
</td>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_edit_td" >
<td valign="top" class="text">
<input type="text" onkeyup="UpdateExtendedPrice('<inp2:m_param name="PrefixSpecial"/>', <inp2:{$PrefixSpecial}_Field field="OrderItemId"/>);" class="text" name="<inp2:{$PrefixSpecial}_InputName field="$field"/>" id="<inp2:{$PrefixSpecial}_InputName field="$field"/>" value="<inp2:{$PrefixSpecial}_field field="$field" grid="$grid"/>" size="4">
</td>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_quantity_td" >
<td valign="top" class="text">
<inp2:m_if check="FieldEquals" field="Type" value="1">
<input type="text" onkeyup="UpdateExtendedPrice('<inp2:m_param name="PrefixSpecial"/>', <inp2:{$PrefixSpecial}_Field field="OrderItemId"/>);" class="text" name="<inp2:{$PrefixSpecial}_InputName field="$field"/>" id="<inp2:{$PrefixSpecial}_InputName field="$field"/>" value="<inp2:{$PrefixSpecial}_field field="$field" grid="$grid"/>" size="4">
<inp2:m_else />
<span class="text"><inp2:{$PrefixSpecial}_field field="$field" grid="$grid"/></span>
<inp2:m_RenderElement name="inp_edit_hidden" prefix="$PrefixSpecial" field="$field"/>
</inp2:m_if>
</td>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_price_td">
<td valign="top" class="text">
$ <input type="text" onkeyup="UpdateExtendedPrice('<inp2:m_param name="PrefixSpecial"/>', <inp2:{$PrefixSpecial}_Field field="OrderItemId"/>);" class="text" name="<inp2:{$PrefixSpecial}_InputName field="$field"/>" id="<inp2:{$PrefixSpecial}_InputName field="$field"/>" value="<inp2:{$PrefixSpecial}_field field="$field" grid="$grid"/>" size="5">
</td>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_extendedprice_td" >
<td valign="top" class="text">$ <span id="<inp2:InputName field="$field"/>"><inp2:Field field="$field" grid="$grid" format="%.2f"/></span></td>
<script type="text/javascript">UpdateExtendedPrice('<inp2:m_param name="PrefixSpecial"/>',<inp2:Field field="OrderItemId"/>);</script>
</inp2:m_DefineElement>
<inp2:m_if check="ord_OrderEditable">
<inp2:m_RenderElement name="grid" grid="Default" PrefixSpecial="orditems" IdField="OrderItemId" header_block="grid_column_title" data_block="grid_data_td" />
<inp2:m_else/>
<inp2:m_RenderElement name="grid" grid="NotEditable" PrefixSpecial="orditems" IdField="OrderItemId" header_block="grid_column_title" data_block="grid_data_td" />
</inp2:m_if>
<script type="text/javascript">
Grids['orditems'].SetDependantToolbarButtons( new Array('delete') );
</script>
<img src="img/spacer.gif" border="0" height="5" width="1"><br>
<table width="100%" cellpadding="7" cellspacing="0" class="tableborder" style="border-top: 1px solid #000000;" border="0">
<tr class="<inp2:m_odd_even odd="table-color1" even="table-color2"/>">
<td class="text" style="text-align: right; font-weight: bold;">
<inp2:m_if check="ord_OrderEditable">
<inp2:m_phrase name="la_OrderSubtotal"/>: $ <span id="order_subtotal">0.00</span><br />
<script type="text/javascript">
CalculateSubtotal('orditems', 'ExtendedPrice', 'order_subtotal');
</script>
<inp2:m_else/>
<inp2:m_phrase name="la_OrderSubtotal"/>: $ <span id="order_subtotal"><inp2:ord_Field name="SubTotal"/></span><br />
</inp2:m_if>
<inp2:m_phrase name="la_OrderReturnTotal"/>: $ <span id="order_returntotal">0.00</span>
<script type="text/javascript">
CalculateSubtotal('orditems', 'ReturnAmount', 'order_returntotal');
</script>
</td>
</tr>
</table>
<input type="hidden" name="main_prefix" id="main_prefix" value="ord">
<inp2:m_include t="incs/footer"/>

Event Timeline