<inp2:m_RequireLogin permissions="in-portal:browse.view" system="1"/>
<inp2:m_DefineElement name="catalog_tab">
	<inp2:m_if check="m_ParamEquals" name="tab_init" value="" inverse="inverse">
		<inp2:m_if check="m_ParamEquals" name="tab_init" value="1">
			function createProductMenu() {
				prod_menu = menuMgr.createMenu(rs('new_prod_menu'));
				prod_menu.applyBorder(false, false, false, false);
				prod_menu.dropShadow("none");
				prod_menu.showIcon = true;

				<inp2:m_DefineElement name="product_type_elem">
					prod_menu.addItem(rs('product.type.<inp2:m_param name="key"/>'),'<inp2:m_phrase name="$option" escape="1"/>','javascript:new_product(<inp2:m_param name="key"/>);');
				</inp2:m_DefineElement>
				<inp2:{$prefix}_PredefinedOptions selected="selected" field="Type" block="product_type_elem" skip_autoload="true"/>
			}

			a_toolbar.AddButton(
				new ToolBarButton(
					'in-commerce:new_product',
					'<inp2:m_phrase label="la_ToolTip_NewProduct" escape="1"/>::<inp2:m_phrase label="la_ToolTip_NewProduct" escape="1"/>',
					function() {
						renderMenus();
						nls_showMenu(rs('new_prod_menu'), a_toolbar.GetButtonImage('new_product'));
					},
					true
		 		)
		 	);

			function new_product($type) {
				$form_name = $Catalog.queryTabRegistry('prefix', $Catalog.ActivePrefix, 'tab_id') + '_form';
				set_hidden_field('<inp2:m_param name="prefix"/>_new_type', $type);

				<inp2:m_if check="m_Get" name="t" equals_to="catalog/catalog">
					std_precreate_item($Catalog.ActivePrefix, $Catalog.queryTabRegistry('prefix', $Catalog.ActivePrefix, 'edit_template'));
				<inp2:m_else/>
					var $kf = document.getElementById($form_name);

					var $prev_action = $kf.action;
					$kf.action = '<inp2:m_t pass="all" no_pass_through="1"/>';

					set_hidden_field('remove_specials[' + $Catalog.ActivePrefix + ']', 1);
					std_precreate_item(
						$Catalog.ActivePrefix, $Catalog.queryTabRegistry('prefix', $Catalog.ActivePrefix, 'edit_template'),
						function() {
							$kf.action = $prev_action;
						}
					);
				</inp2:m_if>
			}

			createProductMenu();
		</inp2:m_if>

		<inp2:m_if check="m_ParamEquals" name="tab_init" value="2">
			<div id="products_div" prefix="<inp2:m_param name="prefix"/>" view_template="in-commerce/catalog_tab" edit_template="in-commerce/products/products_edit" category_id="-1" dep_buttons="new_product" class="catalog-tab"><!-- IE minimal height problem fix --></div>
			<script type="text/javascript">$Catalog.registerTab('products');</script>
		</inp2:m_if>

		<inp2:m_if check="m_ParamEquals" name="tab_init" value="3">
			$Catalog.setItemCount('<inp2:m_Param name="prefix"/>', '<inp2:{$prefix}_CatalogItemCount grid="$grid_name"/>');
		</inp2:m_if>
	<inp2:m_else/>
		<inp2:lang.current_Field name="Charset" result_to_var="charset"/>
		<inp2:m_Header data="Content-type: text/plain; charset=$charset"/>
		<inp2:m_include t="incs/blocks"/>
		<inp2:m_include t="incs/in-portal"/>
		<inp2:m_include t="categories/ci_blocks"/>
		<inp2:$prefix_InitList grid="$grid_name"/>

		$Catalog.setItemCount('<inp2:m_param name="prefix"/>', '<inp2:{$prefix}_CatalogItemCount/>');
		$Catalog.setCurrentCategory('<inp2:m_param name="prefix"/>', <inp2:m_get name="m_cat_id"/>);
		$Catalog.saveSearch('<inp2:m_Param name="prefix"/>', '<inp2:$prefix_SearchKeyword js_escape="1"/>', '<inp2:m_Param name="grid_name"/>');

		<inp2:m_DefineElement name="qty_td">
			<inp2:Field field="QtyInStock" grid="$grid"/>/<inp2:Field field="QtyReserved" grid="$grid"/>
		</inp2:m_DefineElement>

		<inp2:m_include template="in-auction/inc/grid_blocks" is_silent="1"/>

		<inp2:m_RenderElement name="grid_js" PrefixSpecial="$prefix" IdField="ProductId" grid="$grid_name" menu_filters="yes"/>
		<inp2:m_RenderElement name="grid_search_buttons" PrefixSpecial="$prefix" grid="$grid_name" ajax="1"/>

		<inp2:m_if check="m_ParamEquals" name="tab_dependant" value="yes">
			Grids['<inp2:m_param name="prefix"/>'].AddAlternativeGrid('<inp2:m_param name="cat_prefix"/>', true);
		</inp2:m_if>
		Grids['<inp2:m_param name="prefix"/>'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','sep3','cut','copy','move_up','move_down','sep6'));
		$Catalog.reflectPasteButton(<inp2:c_HasClipboard/>);
		$Catalog.setViewMenu('<inp2:m_param name="prefix"/>');
		<inp2:m_if check="m_ParamEquals" name="tab_mode" value="single">
			Grids['<inp2:m_param name="prefix"/>'].DblClick = function() {return false};
		</inp2:m_if>
		#separator#
		<!-- products tab: begin -->
		<inp2:m_RenderElement name="kernel_form" form_name="products_form"/>
			<input type="hidden" name="<inp2:m_param name="prefix"/>_new_type" id="<inp2:m_param name="prefix"/>_new_type" value="">
			<inp2:m_RenderElement name="grid" ajax="1" PrefixSpecial="$prefix" IdField="ProductId" grid="$grid_name" menu_filters="yes"/>
		<inp2:m_RenderElement name="kernel_form_end"/>
		<!-- products tab: end -->
	</inp2:m_if>
</inp2:m_DefineElement>

<inp2:p_InitCatalogTab render_as="catalog_tab" default_grid="Default" radio_grid="Radio"/>