Magento extend IsSaleable with custom stock value - magento

I’m looking to accomplish the following. My shop only has products online which I actually have. I would like to add my suppliers stock to my site, so customers can see and buy the product, but they will receive notice about a delay in shipping.
I have used the shipping days option mentioned in this thread (http://www.magentocommerce.com/boards/viewthread/59143/P0/). This works perfectly.
I would like to extend this line.
getData('days_to_ship')): ?>
to
getData('days_to_ship') && $_product->getData('bu_qty')>1):?>
The attribute name bu_qty is the stock value of my supplier. I would like to use this value to specify if the product is available at my supplier or not. So, if I do not use this field (smaller than 1), the product is supposed to be Out of stock.
If I do use this bu_qty value and set is to the number 1 or higher with also the Days to ship it is supposed to show a message that the item is available for purchase and that it will ship in x days.
Anybody can help me out with this one ?

Related

How do I find a Magento products primary category

I am using Magento 1.6.2.
I need to find an easy way of checking which category is the "default" category for any given product, where multiple categories have been assigned to that product.
The reason for this is as follows:
I have different discount amounts available on different categories in my store.
Where a product falls into two categories with different discounts applied, the highest discount should be applied to that product, but if that product has been added to the system (created) with a default category that has a lower discount, and then afterwards added into the higher discount category as well, the higher discount level is not being applied when that product is purchased.
If, however, I add the product to the higher discount category first, and then to the lower discount category afterwards (so the product appears on my website in all the right places), the correct (higher) discount level applies to that product.
I can only assume, therefore, that the default (or primary, or first, however you want to label it) category is the one that determines the outcome of the discount level to be applied to it. If this is wrong, then I need a lesson in understanding the mechanics behind this to see where I have gone wrong in the overall setup of this system...
If my assumption is correct, then I need a way to determine which category any given product (using the SKU) has been assigned to first, to ensure that the correct discount can be applied to that product.
I hope I have explained that clearly enough!
Does anyone have any suggestions. I have been unable to find information on this regardless of guessing specific search terms. The only things I can find are related to general category retrieval, and not this very specific task I need.
Cheers!
Im afraid your assumption is incorrect. Magento has no concept of a 'primary' category for a product. It only knows the product is in category id(s);
1, 12, 234
etc. The id's are stored numercially with no idea of which category might be more important than another.
What you could do instead is create a custom attribute and enter the id of the category you want to treat as 'primary' and retreive this attribute value when working out whether to give more discount or not.

How to apply "20% Discount" to specific Customers of a Customer Group in Magento 1.7.2?

I have products with a normal price(let's say product A costs 20e) and a group price(lets product A costs 15e) assigned to my customer group
that I call it "Resellers".
I want to apply an extra 20% discount to specific Resellers (not to the whole Reseller group)
in the group price(meaning the 15e)
I tried to solve it by creating a "Shoping Cart Price Rule" (I called it "20% Extra Discount") it applies to the whole Customer Group
How Can I apply 20% it only to specific Resellers and not to the whole Reseller Group for the group price only?
What you are asking is not possible with Magento out of the box.
You can overcome this by generating a coupon that you can send out by e-mail to your specific customers.
or you can try to use an extension like this.
It's not free, but from the looks of it it might get you what you need.
I'm in no way associated to the extension provider. I just found it on a simple search on the web.
You need to do some coding in order to achieve above said, following is the way it should happen.
You would need to hook into an event, ex :
Changing the price in quote while adding product to cart: magento
Also in the observer created above you need to do something like
Add custom discount order in total with button
Now whats above will do :
Let us suppose you create a general rule for 20% discount but do not relate it to any customer group.
What happen is once a product is added to a cart you can check into an Observer whether you want to provide discount to this particular customer.
If yes programmatically add coupon to the quote or order else not.
Please note : there are various other type of event for ex: after moving to checkout etc, in case you do not want to use on adding of product to cart.
hope above helps.

Magento-Custom shopping cart price rule - Buy 2 different products and get those for flate rate?

I want to set up different kind of price rules(shopping cart price rules) for my client. I tried default magento's extension, but I couldn't. when I searched in the net, some solutions told that using observer can solve my problem. But those weren't enough for me. Let me explain one of my problem.
Buy 2 different products and get those for flat rate.
Say, Product X is 700 and Product Y is 500. When customer buys those 2 products (Total 1200), he can get both products for 1000.
is there any straight way to do this or should need to create custom module with database table and observer?
First Specified Your X and Y SKU and put this condition and action and apply discount amount.
If you don't found SKU in condition, then change in the SKU attribute to apply shopping rule to YES

Programmatically apply a discount price in product list

I would like to programmatically display a discounted price on the product list/page so that each customer as a personal price shown based on a customer attribute (like gender for instance, and of course let it be assigned as new price for the user session) but I can't see a viable option via the magento catalog price rules involving customer attributes other than the assigned group.
I'm using the group to do different kind of discounts and categorization of the customers, so the path of "split the customers on the gender" (or similar) is not an option unfortunately, since I can't assign more than 1 group per customer.
At the moment I was thinking about setting up a custom observer to check for calls to the price generation and then let it consider my customer attributes when calculating the price.
Is that possible? if so, any pointers about?
Would you suggest something different?
Thanks a lot to everyone for your time.
As I was thinking before, I solved my issue creating a custom module with an observer looking for catalog_product_get_final_price calls, getting the customer details from the current customer session.
It works great, I just need to let it display the correct price in the catalog product list, but is minimal, as the price seems to be calculated correctly inside the product page and the cart

how to get id of product in shipping method

Is there anyway to get product Id of product in Shipping module, so that for different category I can charge Additional amount.
for eg: i have to two product in carts. One is in phone category and other is in computer category. for shipment I have to add $5 for phone and $25 for computer . so shipment charge should be $30 dollars in frontend. Is there anyway I can get product Id and corresponding product's category Id in Shipping method collect rates method??
Please help me, I am in a deep trouble....I hope Eg that I provided , explains what I need.
Thanks in advance.
You can get the products from quote
Mage::getSingleton('checkout/cart')->getQuote()->getAllItems();
or
Mage::getSingleton('checkout/type_onepage')->getQuote()->getAllItems();
and iterating over those items (be aware of grouped and bundled parents and so on) will give you the category(s) they might belong to and you can make your conditions against those
This is only a tenable option if products belong to only one category. Unless something has changed in the last couple of versions, there is no data for quote items that shows the category context from which they were added.
WebShopApps.com has several already-developed solutions for shipping scenarios. Depending on development contract & budget, it may be more cost-effective to use one of their well-tested extensions, e.g. Shipping Override Matrix.

Resources