Pre-Order Function?

Is there way to set a pre order function up?

I've played around with the Buy In Advance and Sign Up For Notification - setting stock as per instructions - however, it does nothing.

I've played around with the Buy In Advance and Sign Up For Notification - setting stock as per instructions - however, it does nothing.

As far as remember, to set up Buy in Advance feature correctly, product should be in stock and Avail since option should be set for future date

As far as remember, to set up Buy in Advance feature correctly, product should be in stock and Avail since option should be set for future date

It is a way to change tab text from "Add to card" to "Buy in advance" when products are not in stock inventory are set to " track without option" and (the most important thing) availability are set to a future date ?Avail since:..... ?

in this case will be clear for customers about availability : Add to card button will become :pre-order or Buy in advance...

Use products:add_to_cart hook in the design/themes/THEME/templates/common/product_data.tpl file to add necessary condition

Use products:add_to_cart hook in the design/themes/THEME/templates/common/product_data.tpl file to add necessary condition

can you please explain what to add/replace ?

You would look at $product.amount to determine if it's > zero. Then use Add to Cart otherwise use Buy In Advance.

can you please explain what to add/replace ?

If you are not familiar with hooks, add corresponding condition by $product_amount (with underscore, not dot as mentioned in the previous post) variable directly in the mentioned file. But these changes will be overriden after next CS-Cart upgrade

Thank you all!

This is ?

{capture name="product_amount_`$obj_id`"}
{hook name="products:product_amount"}
{if $show_product_amount && $product.is_edp != "Y" && $settings.General.inventory_tracking == "Y"}
{if !$product.hide_stock_info}
{if $settings.Appearance.in_stock_field == "Y"}
{if $product.tracking != "ProductTracking::DO_NOT_TRACK"|enum}
{if ($product_amount > 0 && $product_amount >= $product.min_qty) && $settings.General.inventory_tracking == "Y" || $details_page}
{if (
$product_amount > 0
&& $product_amount >= $product.min_qty
|| $product.out_of_stock_actions == "OutOfStockActions::BUY_IN_ADVANCE"|enum
)
&& $settings.General.inventory_tracking == "Y"
}
{if $show_amount_label}
{__("availability")}:
{/if}
{if $product_amount > 0}
{$product_amount} {__("items")}
{else}
{__("on_backorder")}
{/if}
{elseif $settings.General.inventory_tracking == "Y" && $settings.General.allow_negative_amount != "Y"}
{if $show_amount_label}
{__("in_stock")}:
{/if}
{$out_of_stock_text}
{/if}
{/if}
{/if}
{else}
{if (
$product_amount > 0
&& $product_amount >= $product.min_qty
|| $product.tracking == "ProductTracking::DO_NOT_TRACK"|enum
)
&& $settings.General.inventory_tracking == "Y"
&& $settings.General.allow_negative_amount != "Y"
|| $settings.General.inventory_tracking == "Y"
&& (
$settings.General.allow_negative_amount == "Y"
|| $product.out_of_stock_actions == "OutOfStockActions::BUY_IN_ADVANCE"|enum
)
}
{if $show_amount_label}
{__("availability")}:
{/if}
{if $product_amount > 0}
{__("in_stock")}
{else}
{__("on_backorder")}
{/if}
{elseif $details_page
&& (
$product_amount <= 0
|| $product_amount < $product.min_qty
)
&& $settings.General.inventory_tracking == "Y"
&& $settings.General.allow_negative_amount != "Y"
}
{if $show_amount_label}
{__("availability")}:
{/if}
{$out_of_stock_text}
{/if}
{/if}
{/if}
{/if}
{/hook}
{/capture}
{if $no_capture}
{assign var="capture_name" value="product_amount_`$obj_id`"}
{$smarty.capture.$capture_name nofilter}
{/if}

Button code is located within the products:add_to_cart hook in this file