f548c6cd-9fcf-47c7-85ad-101a9d97f1d9_removalai_preview
Loading ...
5% Additional Off on Prepaid Orders
Free Delivery on Prepaid Orders
10% Additional Off on Order Value of Rs 800 and above
5% Additional Off on Prepaid Orders
Free Delivery on Prepaid Orders
10% Additional Off on Order Value of Rs 800 and above

Follow us

Free Delivery on Prepaid Orders
About usCareerFAQContact
100% pure

Rosenia Ayurveda’s Ferment Oil Hair Serum, Paraben and Mineral Oil Free,200 ML

The serum enhances the natural shine of your hair, leaving it looking silky and glossy
100% pure
100% pure
Ferment oil hair serum is specially formulated to deeply nourish and repair damaged hair.
MRP:

Original price was: ₹600.00.Current price is: ₹450.00.

(25% off)
Tax included
<?php
// Get the current product
global $product;

// Check if we're on a product page and have a product
if (!is_product() || !$product) {
    return;
}

// Check if it's a variable product
if (!$product->is_type('variable')) {
    return;
}

// Get variation data to access prices
$variations = $product->get_available_variations();
$variation_prices = array();

// Find the 100ml and 200ml variations and their prices
foreach ($variations as $variation) {
    $attributes = $variation['attributes'];
    
    // Check for size attribute
    if (isset($attributes['attribute_pa_size'])) {
        $size_value = $attributes['attribute_pa_size'];
        
        if (strpos($size_value, '100') !== false || strpos($size_value, '100-ml') !== false) {
            $variation_prices['100'] = $variation['display_price'];
        } elseif (strpos($size_value, '200') !== false || strpos($size_value, '200-ml') !== false) {
            $variation_prices['200'] = $variation['display_price'];
        }
    }
}

// Format prices with currency symbol
$formatted_prices = array();
if (isset($variation_prices['100'])) {
    $formatted_prices['100'] = wc_price($variation_prices['100']);
}
if (isset($variation_prices['200'])) {
    $formatted_prices['200'] = wc_price($variation_prices['200']);
}

// Get current price (default to 100ML)
$current_price = isset($formatted_prices['100']) ? $formatted_prices['100'] : '';
?>

<!-- Add a div to show the current price -->
<div class="single-price-display">
    <?php echo $current_price; ?>
</div>

<!-- Original size terms hidden but functional -->
<div class="original-size-terms" style="position: absolute; opacity: 0; pointer-events: none; height: 0; overflow: hidden;">
    <?php echo do_shortcode(''); ?>
</div>
/* Hide the original price range in specific places */
.woocommerce-variation-price {
    display: none !important;
}

/* Price display styles */
.single-price-display {
    font-size: 24px;
    font-weight: 600;
    margin: 15px 0;
    display: block !important;
}

/* Make sure the 100 ML button appears selected by default */
.woocommerce div.product form.cart .button-variable-item[data-value="100-ml"],
button[data-value="100-ml"],
a[data-value="100-ml"],
.button-wrapper [data-value="100-ml"],
.size-option[data-value="100-ml"] {
    background-color: #333 !important;
    color: white !important;
    border-color: #333 !important;
}

/* Make sure both size buttons are clickable */
.button-variable-wrapper .button-variable-item,
.button-wrapper button,
.size-option {
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Remove any disabled styles */
.button-variable-item.disabled,
button.disabled,
.disabled {
    opacity: 1 !important;
    pointer-events: auto !important;
}
document.addEventListener('DOMContentLoaded', function() {
    // Wait for the page to fully load
    setTimeout(function() {
        // Hide the original price range display
        const priceRanges = document.querySelectorAll('.price-range, .woocommerce-variation-price');
        priceRanges.forEach(el => {
            el.style.display = 'none';
        });
        
        // Find price display element
        const priceDisplay = document.querySelector('.single-price-display');
        
        // Pricing data from PHP
        const pricingData = {
            <?php if (isset($formatted_prices['100'])): ?>
            '100': '<?php echo addslashes($formatted_prices['100']); ?>',
            <?php endif; ?>
            <?php if (isset($formatted_prices['200'])): ?>
            '200': '<?php echo addslashes($formatted_prices['200']); ?>'
            <?php endif; ?>
        };
        
        // Find size buttons/options - try multiple selectors
        const sizeOptions = document.querySelectorAll('.button-variable-item, [data-attribute="pa_size"] [data-value], .size-option, button[data-value]');
        
        // Map sizes to their elements
        const sizeMap = {};
        sizeOptions.forEach(option => {
            let sizeValue = option.getAttribute('data-value') || '';
            if (sizeValue.includes('100')) {
                sizeMap['100'] = option;
            } else if (sizeValue.includes('200')) {
                sizeMap['200'] = option;
            }
        });
        
        // Ensure the 100 ML option is selected by default
        if (sizeMap['100']) {
            // Force click the 100 ML button
            setTimeout(() => {
                try {
                    sizeMap['100'].click();
                } catch (e) {
                    console.log('Could not click 100 ML option');
                }
            }, 100);
        }
        
        // Add click handlers to update price display
        sizeOptions.forEach(option => {
            option.addEventListener('click', function() {
                const value = this.getAttribute('data-value') || '';
                
                // Update styling for all buttons
                sizeOptions.forEach(btn => {
                    btn.style.backgroundColor = '';
                    btn.style.color = '';
                });
                
                // Set styling for clicked button
                this.style.backgroundColor = '#333';
                this.style.color = 'white';
                
                // Update price based on selection
                if (value.includes('100') && pricingData['100']) {
                    priceDisplay.innerHTML = pricingData['100'];
                } else if (value.includes('200') && pricingData['200']) {
                    priceDisplay.innerHTML = pricingData['200'];
                }
            });
        });
        
        // Make sure variation form is initialized
        if (typeof jQuery !== 'undefined') {
            jQuery('form.variations_form').on('woocommerce_variation_has_changed', function() {
                // Get the current variation
                const variation = jQuery('input[name="variation_id"]').val();
                if (variation) {
                    // Check which size is selected
                    const sizeValue = jQuery('select[name="attribute_pa_size"]').val() || '';
                    
                    if (sizeValue.includes('100') && pricingData['100']) {
                        priceDisplay.innerHTML = pricingData['100'];
                    } else if (sizeValue.includes('200') && pricingData['200']) {
                        priceDisplay.innerHTML = pricingData['200'];
                    }
                }
            });
            
            // Initialize form
            jQuery('form.variations_form').trigger('check_variations');
        }
        
        // Create a hidden select for the size attribute if needed
        const variationForm = document.querySelector('.variations_form');
        if (variationForm && !document.querySelector('select[name="attribute_pa_size"]')) {
            const sizeSelect = document.createElement('select');
            sizeSelect.name = 'attribute_pa_size';
            sizeSelect.style.display = 'none';
            
            // Add options
            const option100 = document.createElement('option');
            option100.value = '100-ml';
            option100.text = '100 ML';
            
            const option200 = document.createElement('option');
            option200.value = '200-ml';
            option200.text = '200 ML';
            
            sizeSelect.appendChild(option100);
            sizeSelect.appendChild(option200);
            
            // Set default
            sizeSelect.value = '100-ml';
            
            // Add to form
            variationForm.appendChild(sizeSelect);
            
            // Trigger change
            if (typeof jQuery !== 'undefined') {
                jQuery(sizeSelect).trigger('change');
            }
        }
    }, 300);
});
<?php
// Get the current product
global $product;

// Check if we're on a product page and have a product
if (!is_product() || !$product) {
    return;
}

// Check if it's a variable product
if (!$product->is_type('variable')) {
    return;
}

// Get variation data to access prices
$variations = $product->get_available_variations();
$variation_prices = array();

// Find the 100ml and 200ml variations and their prices
foreach ($variations as $variation) {
    $attributes = $variation['attributes'];
    
    // Check for size attribute
    if (isset($attributes['attribute_pa_size'])) {
        $size_value = $attributes['attribute_pa_size'];
        
        if (strpos($size_value, '100') !== false || strpos($size_value, '100-ml') !== false) {
            $variation_prices['100'] = $variation['display_price'];
        } elseif (strpos($size_value, '200') !== false || strpos($size_value, '200-ml') !== false) {
            $variation_prices['200'] = $variation['display_price'];
        }
    }
}

// Format prices with currency symbol
$formatted_prices = array();
if (isset($variation_prices['100'])) {
    $formatted_prices['100'] = wc_price($variation_prices['100']);
}
if (isset($variation_prices['200'])) {
    $formatted_prices['200'] = wc_price($variation_prices['200']);
}

// Get current price (default to 100ML)
$current_price = isset($formatted_prices['100']) ? $formatted_prices['100'] : '';
?>

<!-- Add a div to show the current price -->
<div class="single-price-display">
    <?php echo $current_price; ?>
</div>

<!-- Original size terms hidden but functional -->
<div class="original-size-terms" style="position: absolute; opacity: 0; pointer-events: none; height: 0; overflow: hidden;">
    <?php echo do_shortcode(''); ?>
</div>
/* Hide the original price range in specific places */
.woocommerce-variation-price {
    display: none !important;
}

/* Price display styles */
.single-price-display {
    font-size: 24px;
    font-weight: 600;
    margin: 15px 0;
    display: block !important;
}

/* Make sure the 100 ML button appears selected by default */
.woocommerce div.product form.cart .button-variable-item[data-value="100-ml"],
button[data-value="100-ml"],
a[data-value="100-ml"],
.button-wrapper [data-value="100-ml"],
.size-option[data-value="100-ml"] {
    background-color: #333 !important;
    color: white !important;
    border-color: #333 !important;
}

/* Make sure both size buttons are clickable */
.button-variable-wrapper .button-variable-item,
.button-wrapper button,
.size-option {
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Remove any disabled styles */
.button-variable-item.disabled,
button.disabled,
.disabled {
    opacity: 1 !important;
    pointer-events: auto !important;
}
document.addEventListener('DOMContentLoaded', function() {
    // Wait for the page to fully load
    setTimeout(function() {
        // Hide the original price range display
        const priceRanges = document.querySelectorAll('.price-range, .woocommerce-variation-price');
        priceRanges.forEach(el => {
            el.style.display = 'none';
        });
        
        // Find price display element
        const priceDisplay = document.querySelector('.single-price-display');
        
        // Pricing data from PHP
        const pricingData = {
            <?php if (isset($formatted_prices['100'])): ?>
            '100': '<?php echo addslashes($formatted_prices['100']); ?>',
            <?php endif; ?>
            <?php if (isset($formatted_prices['200'])): ?>
            '200': '<?php echo addslashes($formatted_prices['200']); ?>'
            <?php endif; ?>
        };
        
        // Find size buttons/options - try multiple selectors
        const sizeOptions = document.querySelectorAll('.button-variable-item, [data-attribute="pa_size"] [data-value], .size-option, button[data-value]');
        
        // Map sizes to their elements
        const sizeMap = {};
        sizeOptions.forEach(option => {
            let sizeValue = option.getAttribute('data-value') || '';
            if (sizeValue.includes('100')) {
                sizeMap['100'] = option;
            } else if (sizeValue.includes('200')) {
                sizeMap['200'] = option;
            }
        });
        
        // Ensure the 100 ML option is selected by default
        if (sizeMap['100']) {
            // Force click the 100 ML button
            setTimeout(() => {
                try {
                    sizeMap['100'].click();
                } catch (e) {
                    console.log('Could not click 100 ML option');
                }
            }, 100);
        }
        
        // Add click handlers to update price display
        sizeOptions.forEach(option => {
            option.addEventListener('click', function() {
                const value = this.getAttribute('data-value') || '';
                
                // Update styling for all buttons
                sizeOptions.forEach(btn => {
                    btn.style.backgroundColor = '';
                    btn.style.color = '';
                });
                
                // Set styling for clicked button
                this.style.backgroundColor = '#333';
                this.style.color = 'white';
                
                // Update price based on selection
                if (value.includes('100') && pricingData['100']) {
                    priceDisplay.innerHTML = pricingData['100'];
                } else if (value.includes('200') && pricingData['200']) {
                    priceDisplay.innerHTML = pricingData['200'];
                }
            });
        });
        
        // Make sure variation form is initialized
        if (typeof jQuery !== 'undefined') {
            jQuery('form.variations_form').on('woocommerce_variation_has_changed', function() {
                // Get the current variation
                const variation = jQuery('input[name="variation_id"]').val();
                if (variation) {
                    // Check which size is selected
                    const sizeValue = jQuery('select[name="attribute_pa_size"]').val() || '';
                    
                    if (sizeValue.includes('100') && pricingData['100']) {
                        priceDisplay.innerHTML = pricingData['100'];
                    } else if (sizeValue.includes('200') && pricingData['200']) {
                        priceDisplay.innerHTML = pricingData['200'];
                    }
                }
            });
            
            // Initialize form
            jQuery('form.variations_form').trigger('check_variations');
        }
        
        // Create a hidden select for the size attribute if needed
        const variationForm = document.querySelector('.variations_form');
        if (variationForm && !document.querySelector('select[name="attribute_pa_size"]')) {
            const sizeSelect = document.createElement('select');
            sizeSelect.name = 'attribute_pa_size';
            sizeSelect.style.display = 'none';
            
            // Add options
            const option100 = document.createElement('option');
            option100.value = '100-ml';
            option100.text = '100 ML';
            
            const option200 = document.createElement('option');
            option200.value = '200-ml';
            option200.text = '200 ML';
            
            sizeSelect.appendChild(option100);
            sizeSelect.appendChild(option200);
            
            // Set default
            sizeSelect.value = '100-ml';
            
            // Add to form
            variationForm.appendChild(sizeSelect);
            
            // Trigger change
            if (typeof jQuery !== 'undefined') {
                jQuery(sizeSelect).trigger('change');
            }
        }
    }, 300);
});
200ml
Ferment oil hair serum is specially formulated to deeply nourish and repair damaged hair.
Ferment oil hair serum is specially formulated to deeply nourish and repair damaged hair.
The serum enhances the natural shine of your hair, leaving it looking silky and glossy

Product Benefits Frizz Control
Hair Type All
Material Type Free Paraben Free
Scent Camellia
Liquid Volume 200 Millilitres
Item Form Oil
Brand Rosenia
Number of Items 1
Net Quantity 200.0 millilitre
Item Volume 200 Millilitres
See less

About this item
Nourishing formula: Ferment oil hair serum is specially formulated to deeply nourish and repair damaged hair.
Repairing benefits: The serum helps repair damaged hair and improve hair elasticity, leaving hair looking healthy and strong.
Adds shine: The serum enhances the natural shine of your hair, leaving it looking silky and glossy
Frizz control: The serum helps control frizz and prevent flyaways, leaving hair looking smooth and manageable.
Split end treatment: The serum helps repair split ends and prevent further damage, keeping your hair looking healthy.
Easy to use: Simply apply a small amount of the serum to your hair, concentrating on the ends, for best results.

Natural Ingredients

Real Ingredients

100% Pure

Natural

Self Care

Premium

Hair Care

Skin Care

Powered byCusRev
Add a review
Rosenia Ayurveda's Ferment Oil Hair Serum, Paraben and Mineral Oil Free,200 ML Rosenia Ayurveda's Ferment Oil Hair Serum, Paraben and Mineral Oil Free,200 ML
Overall rating*
0/5
* Rating is required
What will you rate the product?*
0/5
* Rating is required
* Answer is required
Your review
* Review is required
Name
* Name is required
0.0
Based on 0 reviews
5 star
0%
4 star
0%
3 star
0%
2 star
0%
1 star
0%
0 of 0 reviews

Sorry, no reviews match your current selections

Reviews

There are no reviews yet

Be the first to review “Rosenia Ayurveda’s Ferment Oil Hair Serum, Paraben and Mineral Oil Free,200 ML”

Your email address will not be published. Required fields are marked *

Overall rating*
0/5
* Rating is required
What will you rate the product?*
0/5
* Rating is required
* Answer is required

1
  • Item added to cart
1
Your Cart
You're [500] aAway From Free Delivery
500800
Free Delivery10% Discount
Rosenia Ayurveda Natural Rosemary Handmade Bathing Soap | Bathing Bar
Rosenia Ayurveda Natural Rosemary Handmade Bathing Soap | Bathing Bar
Price: Original price was: ₹145.00.Current price is: ₹101.00.
- +
101.00
    Calculate Shipping
    Enter your address to view shipping options.
    Apply Coupon
    Available Coupons
    free delivery Get 5% off