giftr.my Open in urlscan Pro
23.227.38.32  Public Scan

Submitted URL: https://jqrdoz.clicks.mlsend.com/tf/cl/eyJ2Ijoie1wiYVwiOjU5ODY3NSxcImxcIjoxMTU2NjgwMTMxNjI2OTQ1MDUsXCJyXCI6MTE1NjY4MDE0NTk2MDk3Nz...
Effective URL: https://giftr.my/products/raya-2024-raya-surprise-basket-1-klang-valley-delivery?ml_recipient=115668014596097737&...
Submission: On March 13 via manual from CA — Scanned from CA

Form analysis 8 forms found in the DOM

GET /pages/search-results-page

<form class="navbar-form search" action="/pages/search-results-page" method="get">
  <input type="hidden" name="type" value="product">
  <input type="text" name="q" class="form-control snize-input-style" placeholder="I am looking for...." autocomplete="off">
  <button type="submit" class="search-icon"><i class="icon icon-search"></i></button>
</form>

POST /pages/search-results-page

<form id="search" class="navbar-form search" action="/pages/search-results-page" method="post">
  <input type="hidden" name="type" value="product">
  <input id="bc-product-search" type="text" name="q" class="form-control snize-input-style" placeholder="Search" autocomplete="off" autocorrect="off" autocapitalize="off">
  <button type="submit" class="search-icon"></button>
</form>

POST /cart/add

<form id="form" action="/cart/add" method="post" class="product-action variants" enctype="multipart/form-data">
  <div id="product-action-7892554317985" class="options">
    <div class="variants-wrapper clearfix input-container">
      <div class="selector-wrapper select_delivery area"><label>Select Delivery Area</label><select class="single-option-selector" data-option="option1" id="product-select-7892554317985-option-0">
          <option value="Zone A">Zone A</option>
          <option value="Zone B">Zone B</option>
          <option value="Zone C">Zone C</option>
          <option value="Zone D">Zone D</option>
          <option value="Zone E">Zone E</option>
        </select></div><select id="product-select-7892554317985" name="id" style="display:none;">
        <option selected="selected" value="43899629404321">Zone A</option>
        <option value="43899629437089">Zone B</option>
        <option value="43899629469857">Zone C</option>
        <option value="43899629535393">Zone D</option>
        <option value="43899629568161">Zone E</option>
      </select>
    </div>
    <!--<div id="purchase-7892554317985" class="product-price">
                          <div class="detail-price">
                            <span class=money>RM179.00</span>
                          </div>
                        </div>-->
    <div class="row">
      <input hidden="" type="text" name="properties[Fulfilled by]" class="additional-customization form-control" value="Carnations Florist &amp; Gifts">
      <div class="col-sm-6 col-xs-12 form-group">
        <label class="product-extra-fields-label" for="date"> Delivery Date* </label>
        <span id="date-error" class="error hidden">Please select delivery date</span>
        <input id="date" type="text" name="properties[Delivery]" class="form-control required" readonly="readonly" placeholder="Please select delivery date">
        <a href="#product-availability"><img class="img-responsive center-block" style="width:30px;height:30px; float:left; margin-top:-3px;" src="https://cdn.shopify.com/s/files/1/1428/2106/files/finger-of-a-hand-pointing-to-right-direction.png?901194010351471941" alt="CLICK"><span>Click here for terms &amp; delivery time</span></a>
      </div>
      <div class="col-xs-12">
        <div id="add-ons-info">
          <span>There are no add ons</span>
        </div>
      </div>
      <div class="col-xs-12">
        <script src="//giftr.my/cdn/shop/t/23/assets/jquery.ui.touch-punch.min.js?v=70940435807250494521673252703"></script>
        <script src="//giftr.my/cdn/shop/t/23/assets/wavesurfer.js?v=145278412392383761061673252699"></script>
        <label class="product-extra-fields-label">Message on Card<span class="header-gift-finder-new">New</span></label>
        <div class="message-preview"> Preview: <div class="message-preview-content" onclick="toggleVMPopup(event)">
            <p class="preview-message-text" id="preview-message-text"> Your text message will appear here. Click to create your message. </p>
            <div class="preview-qrcode-container" id="preview-qrcode-container">
              <p>Scan here for virtual message</p>
              <div style="height: 90px; width: 90px; display: inline-block">
                <a onclick="toggleVMPreview(event)" class="preview-vm-qrcode" id="preview-vm-qrcode"></a>
              </div>
              <p>Click to View</p>
            </div>
          </div>
          <button style="display: none" id="edit-msg" onclick="toggleVMPopup(event)">Edit Message</button>
          <button style="display: none" id="preview-vm" onclick="toggleVMPreview(event)">Preview Virtual Message Page</button>
        </div>
        <div id="virtual-message-overlay" onclick="toggleVMPopup(event)"></div>
        <div id="virtual-message-popup">
          <div style="position: relative; height: 0">
            <i class="fa fa-close fa-2x" id="vm-close" onclick="toggleVMPopup(event)"></i>
          </div>
          <div class="message-tab">
            <div style="display: flex; height: 100%; flex-direction: column">
              <h2 class="text-center">Step 1: Add a text message</h2>
              <div class="vm-popup-content">
                <label class="product-extra-fields-label">Text Message Template</label>
                <select id="list">
                  <option value="Default">Write my own message</option>
                  <option value="Blank">Leave it Blank</option>
                  <!-- <option value="Vday#1">Valentine's Day #1</option> -->
                  <!-- <option value="Vday#2">Valentine's Day #2</option> -->
                  <!-- <option value="Vday#3">Valentine's Day #3</option> -->
                  <!-- <option value="CNY#1">Chinese New Year Wishes #1</option> -->
                  <!-- <option value="CNY#2">Chinese New Year Wishes #2</option> -->
                  <!-- <option value="CNY#3">Chinese New Year Wishes #3</option> -->
                  <!-- <option value="CNY#4">Chinese New Year Wishes #4</option> -->
                  <option value="HariRayaMalay#1">Hari Raya Malay #1</option>
                  <option value="HariRayaMalay#2">Hari Raya Malay #2</option>
                  <option value="HariRayaMalay#3">Hari Raya Malay #3</option>
                  <option value="HariRayaEnglish#1">Hari Raya English #1</option>
                  <option value="HariRayaEnglish#2">Hari Raya English #2</option>
                  <option value="HariRayaEnglish#3">Hari Raya English #3</option>
                  <!--       	<option value="MothersDay#1">Mother's Day #1</option> -->
                  <!--       	<option value="MothersDay#2">Mother's Day  #2</option> -->
                  <!--       	<option value="MothersDay#3">Mother's Day  #3</option> -->
                  <!--       	<option value="FathersDay#1">Father's Day #1</option> -->
                  <!--       	<option value="FathersDay#2">Father's Day #2</option> -->
                  <!--       	<option value="FathersDay#3">Father's Day #3</option> -->
                  <!-- <option value="Deepavali#1">Deepavali #1</option> -->
                  <!-- <option value="Deepavali#2">Deepavali #2</option> -->
                  <!-- <option value="Deepavali#3">Deepavali #3</option> -->
                  <!-- <option value="Mid-Autumn#1">Mid-Autumn #1</option> --> --&gt; <!-- <option value="Mid-Autumn#2">Mid-Autumn #2</option> --> --&gt; <!-- <option value="Mid-Autumn#3">Mid-Autumn #3</option> --> --&gt;
                  <!-- <option value="Christmas#1">Christmas & New Year #1</option>  -->
                  <!-- <option value="Christmas#2">Christmas & New Year #2</option> -->
                  <!-- <option value="Christmas#3">Christmas & New Year #3</option> -->
                  <option value="Birthday#1">Birthday #1</option>
                  <option value="Birthday#2">Birthday #2</option>
                  <option value="Birthday#3">Birthday #3</option>
                  <option value="LoveWishes#1">Love Wishes #1</option>
                  <option value="LoveWishes#2">Love Wishes #2</option>
                  <option value="LoveWishes#3">Love Wishes #3</option>
                  <option value="Anniversary#1">Anniversary #1</option>
                  <option value="Anniversary#2">Anniversary #2</option>
                  <option value="Anniversary#3">Anniversary #3</option>
                  <option value="Anniversary#4">Anniversary #4</option>
                  <option value="BestWishes#1">Best Wishes #1</option>
                  <option value="BestWishes#2">Best Wishes #2</option>
                  <option value="BestWishes#3">Best Wishes #3</option>
                  <option value="Appreciation#1">Appreciation #1</option>
                  <option value="Appreciation#2">Appreciation #2</option>
                  <option value="Appreciation#3">Appreciation #3</option>
                  <option value="Congratulatory#1">Congratulatory #1</option>
                  <option value="Congratulatory#2">Congratulatory #2</option>
                  <option value="Congratulatory#3">Congratulatory #3</option>
                  <option value="GrandOpening#1">Grand Opening #1</option>
                  <option value="GrandOpening#2">Grand Opening #2</option>
                  <option value="GrandOpening#3">Grand Opening #3</option>
                  <option value="GWS#1">Get Well Soon #1</option>
                  <option value="GWS#2">Get Well Soon #2</option>
                  <option value="GWS#3">Get Well Soon #3</option>
                  <option value="Newborn#1">Newborn #1</option>
                  <option value="Newborn#2">Newborn #2</option>
                  <option value="Newborn#3">Newborn #3</option>
                  <option value="Apology#1">Apology #1</option>
                  <option value="Apology#2">Apology #2</option>
                  <option value="Apology#3">Apology #3</option>
                  <option value="CheerUp#1">Cheer Up #1</option>
                  <option value="CheerUp#2">Cheer Up #2</option>
                  <option value="CheerUp#3">Cheer Up #3</option>
                  <option value="Graduation#1">Graduation #1</option>
                  <option value="Graduation#2">Graduation #2</option>
                  <option value="Graduation#3">Graduation #3</option>
                  <option value="Housewarming#1">Housewarming #1</option>
                  <option value="Housewarming#2">Housewarming #2</option>
                  <option value="Housewarming#3">Housewarming #3</option>
                  <option value="Condolences#1">Condolences #1</option>
                  <option value="Condolences#2">Condolences #2</option>
                  <option value="Condolences#3">Condolences #3</option>
                </select>
                <script type="text/javascript">
                  function myMessage() {
                    var e = document.getElementById("list");
                    var msg = document.getElementById("message");
                    var options = e.options[e.selectedIndex];
                    var placeholder = "Dear RECEIVER_NAME,\n\nType your message/wishes here or select one of the templates.\n\nFrom: YOUR_NAME"
                    let hideMessageArea = false
                    if ("Default" === options.value) {
                      msg.value = "";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Blank" === options.value) {
                      msg.value = "";
                      msg.placeholder = "";
                      msg.readOnly = true;
                      hideMessageArea = true
                    } else if ("Vday#1" === options.value) {
                      msg.value = "Dear  ,\n\nLove is an open door, and you just so happened to slam me in the face with it. I love you! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Vday#2" === options.value) {
                      msg.value = "Dear  ,\n\nThanks for being you and for being mine. To all the adventures we had, and more to come, I love you!  \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Vday#3" === options.value) {
                      msg.value = "Dear  ,\n\nThank you for being my friend, my lover, my pillar in life, my everything. I couldn’t have gotten to where I am without you.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("CNY#1" === options.value) {
                      msg.value = "Dear  ,\n\nMay my wishes of health, happiness, and prosperity be conveyed to you through this gift! Happy Chinese New Year!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("CNY#2" === options.value) {
                      msg.value = "Dear  ,\n\nOut with the old, in with the new, may the new year bring your biggest wishes to fruition! Happy CNY! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("CNY#3" === options.value) {
                      msg.value =
                        "Dear  ,\n\nMay the spirit of the mighty dragon infuse your endeavors with power, resilience, and a touch of magic. As you embark on this new lunar cycle, may you soar to new heights, breaking barriers and achieving remarkable feats.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("CNY#4" === options.value) {
                      msg.value = "Dear  ,\n\n龙腾盛世,瑞气盈门!在这辞旧迎新的美好时刻,祝愿大家龙年大吉,万事如意!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaMalay#1" === options.value) {
                      msg.value = "Kepada  ,\n\nSelamat Hari Raya Aidilfitri! Dengan ikhlas hati menyusun sepuluh jari tanda memohon maaf zahir dan batin.\n\nDaripada:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaMalay#2" === options.value) {
                      msg.value = "Kepada  ,\n\nSelamat Hari Raya! Ampun dan maaf dipinta, moga Syawal kali ini memberi seribu makna.\n\nDaripada:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaMalay#3" === options.value) {
                      msg.value = "Kepada  ,\n\nMohon seribu kemaafan dari kalian, andai ada tersalah bahasa dan tersilap perlakuan sepanjang kita bersama. Selamat Hari Raya!\n\nDaripada:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaEnglish#1" === options.value) {
                      msg.value = "Dear  ,\n\nSending you my warm wishes full of love, peace and prosperity on Hari Raya Aidilfitri. Salam Aidilfitri!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaEnglish#2" === options.value) {
                      msg.value = "Dear  ,\n\nHope you enjoy the festivities and have a great time! Selamat Hari Raya!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("HariRayaEnglish#3" === options.value) {
                      msg.value = "Dear  ,\n\nSelamat Hari Raya Aidilfitri! Wishing you and your family a prosperous and blessing celebration.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("MothersDay#1" === options.value) {
                      msg.value = "Dear  ,\n\nHave a wonderful Mother's Day Mum! I love you more than words can say! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("MothersDay#2" === options.value) {
                      msg.value = "Dear  ,\n\nRight from the start, you supported me in everything. Thank you for being there with just the love I needed. Happy Mother's Day! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("MothersDay#3" === options.value) {
                      msg.value = "Dear  ,\n\nMom, you are the most outstanding woman in my life, and you’ll always be my number one. Have a very happy Mother’s Day!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("FathersDay#1" === options.value) {
                      msg.value = "Dear  ,\n\nHappy Father’s day to the best Dad in the world! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("FathersDay#3" === options.value) {
                      msg.value = "Dear  ,\n\nThank you for all the sacrifices you make for our family and all the joy and love you bring into our lives. We couldn’t have asked for a better Dad! Happy Father’s day.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("FathersDay#2" === options.value) {
                      msg.value = "Dear  ,\n\nI’m so grateful for all your guidance and wisdom, you really are the best! Happy Father’s day! \n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("FathersDay#3" === options.value) {
                      msg.value = "Dear  ,\n\nThank you for all the sacrifices you make for our family and all the joy and love you bring into our lives. We couldn’t have asked for a better Dad! Happy Father’s day.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Deepavali#1" === options.value) {
                      msg.value = "Dear  ,\n\nMay millions of lamps illuminate your life with endless joy, prosperity, health & wealth forever. Wishing you and your family. Happy & Safe Diwali!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Deepavali#2" === options.value) {
                      msg.value = "Dear  ,\n\nMay the beauty Of Deepavali season fill your home with happiness, and may the coming year provide you with all that brings you joy! Happy Diwali!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Deepavali#3" === options.value) {
                      msg.value = "Dear  ,\n\nWishing that your life glows with happiness, prosperity, and joy on this Diwali and always.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Mid-Autumn#1" === options.value) {
                      msg.value = "Dear  ,\n\nWishing you a happy and prosperous Mid-Autumn Festival!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Mid-Autumn#2" === options.value) {
                      msg.value = "Dear  ,\n\nHappy Mid-Autumn Festival! May the round moon bring you a happy family and a successful future.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Mid-Autumn#3" === options.value) {
                      msg.value = "Dear  ,\n\nDuring this Mooncake Festival time, the bright, full moon wishes you many blessings, a sincere and long-lasting friendship, and always good fortune in the future.\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Christmas#1" === options.value) {
                      msg.value = "Dear  ,\n\nMay your Christmas be filled with lots of happiness, peace and love. Have a wonderful Christmas!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Christmas#2" === options.value) {
                      msg.value = "Dear  ,\n\nMay blessings shine upon you, just as you have blessed others. I love you from my head to my mistletoe. Merry Christmas!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Christmas#3" === options.value) {
                      msg.value = "Dear  ,\n\nI hope the magic of Christmas fills every corner of your heart and home with joy - now and always. Merry Christmas!\n\nFrom:";
                      msg.placeholder = "";
                      msg.readOnly = false;
                    } else if ("Birthday#1" === options.value) {
                      msg.value = "Dear  ,\n\nHappiest of birthdays! May you have a blessed year ahead and endless happiness.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Birthday#2" === options.value) {
                      msg.value = "Dear  ,\n\nLet this day be full of joy and celebration. I wish you an outstanding and fabulous birthday!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Birthday#3" === options.value) {
                      msg.value = "Dear  ,\n\nHappy birthday! On your birthday I’m going to share the secret to staying young: lie about your age 😉\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("LoveWishes#1" === options.value) {
                      msg.value = "Dear  ,\n\nYou are the reason for my smile and my happiness. I love you!❤️\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("LoveWishes#2" === options.value) {
                      msg.value = "Dear  ,\n\nMy dear, I loved you once, love you still, always have and always will.❤️\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("LoveWishes#3" === options.value) {
                      msg.value = "Dear  ,\n\nSince no human can live without air, I can’t live without you. Wish you the best always, love you!❤️❤️❤️\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Anniversary#1" === options.value) {
                      msg.value = "Dear  ,\n\nHappy Anniversary, with all my love, to the strongest, kindest, funniest, best person I know ❤️ \n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Anniversary#2" === options.value) {
                      msg.value =
                        "Dear  ,\n\nI still remember the way my heart leaped when it was our wedding day. Of course I said yes I do, and I’d say it all over again. Yes to you. Yes to this life we’ve made. A thousand times YES to our love!❤️\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Anniversary#3" === options.value) {
                      msg.value = "Dear  ,\n\nHope you find time to look back on all your sweet memories together. Warmest wishes to the wonderful two of you on your anniversary.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Anniversary#4" === options.value) {
                      msg.value = "Dear  ,\n\nThe two of you have your own reasons to celebrate on your anniversary, and as someone who loves you dearly, I have so many reasons to celebrate you both. Wishing the best for you always.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("BestWishes#1" === options.value) {
                      msg.value = "Dear  ,\n\nMoving on to a new stage in life can be a challenging process. Wish you the best of luck in all of your future endeavors, you will be great!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("BestWishes#2" === options.value) {
                      msg.value = "Dear  ,\n\nThe future is bright and beautiful. Love it, strive for it and work for it. Best of luck!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("BestWishes#3" === options.value) {
                      msg.value = "Dear  ,\n\nI am thrilled to know that luck has finally found you. Dream Big. Sparkle More. Shine Bright. Best wishes for you always.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Appreciation#1" === options.value) {
                      msg.value = "Dear  ,\n\nSometimes the simplest things mean the most. Your thoughtfulness is a gift I will always treasure. Thank you!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Appreciation#2" === options.value) {
                      msg.value = "Dear  ,\n\nI can never thank you enough. But this is a start. For all the little and big ways you’ve pitched in…thanks! You have no idea how much your help has meant, I appreciate you so much.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Appreciation#3" === options.value) {
                      msg.value = "Dear  ,\n\nYour generosity never ceases to amaze me. I will always appreciate all your kindness and support that you have always shown me.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Congratulatory#1" === options.value) {
                      msg.value = "Dear  ,\n\nSo pleased to see you accomplishing great milestones. This calls for celebrating! Congratulations!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Congratulatory#2" === options.value) {
                      msg.value = "Dear  ,\n\nIt makes me so happy to think about your success. It couldn’t have come to a more deserving person.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Congratulatory#3" === options.value) {
                      msg.value = "Dear  ,\n\nCongratulations! I’ve got a feeling this is only the beginning of even more great things to come for you!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GWS#1" === options.value) {
                      msg.value = "Dear  ,\n\nRemember that you're not alone. We'll be here by your side as you get through this. Get well soon!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GWS#2" === options.value) {
                      msg.value = "Dear  ,\n\nDon't worry, we'll fight this together. I know we can win! You'll be feeling better before you know it.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GWS#3" === options.value) {
                      msg.value = "Dear  ,\n\nSending you the biggest hugs and wishing you love and good health!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Newborn#1" === options.value) {
                      msg.value = "Dear  ,\n\nCongratulations on the arrival of your baby! At last, all your wishes came true. May the little guy be blessed with good health, happiness, and prosperity throughout his life.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Newborn#2" === options.value) {
                      msg.value = "Dear  ,\n\nToday will remain a special day for the rest of your life, as today you became parents for the cutest little baby. Congratulations and may God bless your family.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Newborn#3" === options.value) {
                      msg.value = "Dear  ,\n\nBuckle up for those sleepless nights, diaper changes and the endless joy of parenting. Welcome to the club and congratulations on the arrival of your baby.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Apology#1" === options.value) {
                      msg.value = "Dear  ,\n\nI may not be as wise as you but I am wise enough to see the damage I have caused to our friendship. I know you will forgive me in the end but I am really sorry!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Apology#2" === options.value) {
                      msg.value = "Dear  ,\n\nEver since I have hurt you I have been feeling really miserable, let’s chill and be cool again! I’m sorry please forgive me!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Apology#3" === options.value) {
                      msg.value = "Dear  ,\n\nI have done many mistakes in life but none of them came back to haunt me with such strength. I am deeply sorry for the pain I have caused you. Please forgive me.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("CheerUp#1" === options.value) {
                      msg.value = "Dear  ,\n\nThings will get better. It may be today or tomorrow - it is just a matter of time. Chin up and never give up!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("CheerUp#2" === options.value) {
                      msg.value = "Dear  ,\n\nSmile always, even if the sadness knocks on your window, it will go blind from your gorgeous smile.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("CheerUp#3" === options.value) {
                      msg.value = "Dear  ,\n\nEnjoy everything that makes life worth living for. Take care of yourself; life is great when you smile more often. Sending you all my warm wishes.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Graduation#1" === options.value) {
                      msg.value = "Dear  ,\n\nGood looks, brains, loving heart and now graduated, too? You’ve really got it all! Congrats!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Graduation#2" === options.value) {
                      msg.value = "Dear  ,\n\nSo happy to share in the excitement of your graduation day, and so very proud of you, too!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Graduation#3" === options.value) {
                      msg.value = "Dear  ,\n\nHope you’re able to take a well-earned rest, vacation—whatever kind of break sounds like fun. You’ve earned it!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Housewarming#1" === options.value) {
                      msg.value = "Dear  ,\n\nYour first steps into your new home are your first steps into your new life. Here’s to the beginning of something beautiful. Wishing a great and amazing housewarming!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Housewarming#2" === options.value) {
                      msg.value = "Dear  ,\n\nHome is a word that symbolizes love, care, trust, progress, memories, and relationships. May you be blessed with all of these and more in your new home, congratulations!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Housewarming#3" === options.value) {
                      msg.value =
                        "Dear  ,\n\nMoving into a new house is synonymous to starting a new life. Embrace the new scent of success & leave all your worries behind. May blessings and happiness shower in your new house! Congratulations!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Condolences#1" === options.value) {
                      msg.value = "Dear  ,\n\nMy heart aches to hear this news. I’m praying for everyone. Please know that I love you and will always be here for you.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Condolences#2" === options.value) {
                      msg.value = "Dear  ,\n\nMy thoughts and prayers are with you in your time of grief. I'm so sorry for your loss.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("Condolences#3" === options.value) {
                      msg.value = "Dear  ,\n\nMy sincere condolences, just know that I am here for you, please don’t hesitate to reach out, especially during this difficult time.\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GrandOpening#1" === options.value) {
                      msg.value = "Dear  ,\n\nCongratulations on your grand opening! May your business prosper in the years to come!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GrandOpening#2" === options.value) {
                      msg.value = "Dear  ,\n\nHeartiest congratulations on starting your new business. With your determination and perseverance, there is nothing that you cannot overcome. All the best!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    } else if ("GrandOpening#3" === options.value) {
                      msg.value = "Dear  ,\n\nAs you start your new business, I wish that failure is behind you, success is in front of you, good luck is by your side.  Congratulations!\n\nFrom:";
                      msg.placeholder = placeholder;
                      msg.readOnly = false;
                    }
                    if (hideMessageArea) {
                      $('#message-area').addClass('hidden')
                    } else {
                      $('#message-area').removeClass('hidden')
                    }
                    countCharMsg()
                  }

                  function countCharMsg() {
                    var length = $("#message").val().length;
                    $("#message-char-count").text(length + "/250 characters")
                    if ($('#vm-input')) {
                      onEditTextMessage();
                    }
                  }
                  document.getElementById("list").addEventListener("change", myMessage);
                </script>
                <div id="message-area">
                  <label class="product-extra-fields-label" for="message">Text Message </label>
                  <textarea id="message" oninput="countCharMsg()" class="message-on-card" name="properties[Message on Card]" maxlength="250" oninvalid="this.setCustomValidity('Please tell us where your delivery address')" placeholder="Dear RECEIVER_NAME,

Type your message/wishes here or select one of the templates.

From: YOUR_NAME
"></textarea>
                  <p id="message-char-count">250 Characters Max</p>
                </div>
                <style>
                  .hidden {
                    display: none;
                  }
                </style>
              </div>
            </div>
          </div>
          <div class="message-tab">
            <div style="display: flex; height: 100%; flex-direction: column">
              <h2 class="text-center">Step 2: Add a virtual message</h2>
              <div id="virtual-message-container">
                <iframe src="https://app.giftr.my/virtualmessage" id="virtual-message-app" width="100%" allow="camera;microphone" style="border:none;padding-left: 0px; padding-right: 0px;"></iframe>
              </div>
            </div>
          </div>
          <button class="msg-popup-btn" id="msg-prev-btn" onclick="msgNextPrevTab(event, -1)" style="display: inline;"><i style="color: white" class="fa fa-arrow-left"></i></button>
          <button class="msg-popup-btn pull-right" id="msg-next-btn" onclick="msgNextPrevTab(event, 1)"><i style="color: white" class="fa fa-arrow-right"></i></button>
          <div style="text-align:center;">
            <span class="vm-step"></span>
            <span class="vm-step"></span>
          </div>
        </div>
        <input type="text" id="vm-input" readonly="" style="display: none;" name="properties[Audio/Video Message]" value="N/A">
        <input hidden="" type="text" id="vm-full-link" name="vmLink" class="additional-customization form-control">
        <!-- VM PAGE PREVIEW -->
        <div id="vm-page-preview-overlay" onclick="toggleVMPreview(event)"></div>
        <div id="vm-page-preview" style="opacity: 0; visibility: hidden;">
          <div style="position: relative; height: 0">
            <div class="container" style="max-width: 100%; display: flex">
              <div class="preview-prompt">
                <p style="padding: 10px 20px; text-align: center; margin: 0;">[PREVIEW] The receiver will see this virtual message page when they scan the QR code on printed message card</p>
              </div>
            </div>
            <i class="fa fa-close fa-2x" style="margin: 7px; top: 0; padding-right: 10px;" id="vm-close" onclick="toggleVMPreview(event)"></i>
          </div>
          <div class="container vm-page-preview-content" style="margin-top: 70px; margin-bottom: 50px; max-width: 100%;">
            <div class="row">
              <div id="col-main" class="col-sm-12">
                <h1>JUST FOR YOU</h1>
                <div class="message-container">
                  <p class="message"></p>
                </div>
                <div class="vm-container">
                  <div id="c-image" class="hide">
                    <img id="image" src="">
                    <p style="font-size: 0.9rem"><i>Uploaded media is available for 3 months only. You may download a copy for your own reference </i>🙂</p>
                  </div>
                  <div class="c-audio hide">
                    <div id="waveform">
                      <wave style="display: block; position: relative; user-select: none; height: 90px; width: 100%; overflow: hidden;">
                        <wave style="position: absolute; z-index: 3; left: 0px; top: 0px; bottom: 0px; overflow: hidden; width: 0px; display: none; box-sizing: border-box; border-right: 0px solid rgb(51, 51, 51); pointer-events: none;"><canvas
                            style="position: absolute; left: 0px; top: 0px; bottom: 0px; height: 100%;"></canvas></wave><canvas style="position: absolute; z-index: 2; left: 0px; top: 0px; bottom: 0px; height: 100%; pointer-events: none;"></canvas>
                      </wave>
                    </div>
                    <div class="a-controls">
                      <div class="time">
                        <span id="a-current">0:00</span> / <span id="a-duration">0:00</span>
                      </div>
                      <div class="play-pause">
                        <button id="playPauseButton"></button>
                      </div>
                      <div class="a-controls-misc">
                        <div>
                          <a id="a-dl-link" download="virtualmessage-audio.mp3"><img src="//giftr.my/cdn/shop/t/23/assets/download-button.svg?v=35773428140899117901673252699"></a>
                        </div>
                        <div class="a-vol">
                          <button onclick="audioButton(event)"></button>
                          <div id="a-slider" class="ui-slider ui-slider-vertical ui-widget ui-widget-content ui-corner-all">
                            <div class="ui-slider-range ui-widget-header ui-slider-range-min" style="height: 100%;"></div><a class="ui-slider-handle ui-state-default ui-corner-all" href="#" style="bottom: 100%;"></a>
                          </div>
                        </div>
                      </div>
                    </div>
                    <p style="font-size: 0.9rem"><i>Uploaded media is available for 3 months only. You may download a copy for your own reference </i>🙂</p>
                  </div>
                  <div class="c-video hide" id="c-video">
                    <video id="video" preload="metadata" playsinline="">
                    </video>
                    <div class="v-controls">
                      <div class="teal-bar">
                        <div id="seek-slider" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all">
                          <div class="ui-slider-range ui-widget-header ui-slider-range-min" style="width: 0%;"></div><a class="ui-slider-handle ui-state-default ui-corner-all" href="#" style="left: 0%;"></a>
                        </div>
                      </div>
                      <div class="v-controls-hidden">
                        <div class="time">
                          <span id="v-current">0:00</span> / <span id="v-duration">0:00</span>
                        </div>
                        <div class="play-pause">
                          <button id="play-pause" onclick="playPause(event)" ontouchstart="playPause(event)"></button>
                        </div>
                        <div class="volume">
                          <div class="download">
                            <a id="dl-link" download="virtualmessage-video.mp4"><img src="//giftr.my/cdn/shop/t/23/assets/download-button.svg?v=35773428140899117901673252699"></a>
                          </div>
                          <div class="vol-button">
                            <button style="display: flex" onclick="volumeButton(event)"></button>
                            <div id="vol-slider" class="ui-slider ui-slider-vertical ui-widget ui-widget-content ui-corner-all">
                              <div class="ui-slider-range ui-widget-header ui-slider-range-min" style="height: 100%;"></div><a class="ui-slider-handle ui-state-default ui-corner-all" href="#" style="bottom: 100%;"></a>
                            </div>
                          </div>
                          <div class="fullscreen">
                            <button id="fullscreen" onclick="fullscreen(event)" ontouchstart="fullscreen(event)"></button>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                  <p id="v-info" class="hide" style="font-size: 0.9rem"><i>Uploaded media is available for 3 months only. You may download a copy for your own reference </i>🙂</p>
                  <div class="hide c-video" id="yt-embed">
                  </div>
                  <div id="vm-thanks">
                    <p style="font-size: 1.2rem; color: #777777;">Say something to thank the sender:</p>
                    <textarea name="thanks-message"></textarea>
                    <p style="font-size: 1.2rem; color: #777777;">Or simply click the icon below to express your gratitude:</p>
                    <ul>
                      <li>
                        <input id="emoji1" type="radio" name="thanks-emoji" value="😃" style="opacity: 0">
                        <label for="emoji1">😃</label>
                      </li>
                      <li>
                        <input id="emoji2" type="radio" name="thanks-emoji" value="🥰" style="opacity: 0">
                        <label for="emoji2">🥰</label>
                      </li>
                      <li>
                        <input id="emoji3" type="radio" name="thanks-emoji" value="😱" style="opacity: 0">
                        <label for="emoji3">😱</label>
                      </li>
                      <li>
                        <input id="emoji4" type="radio" name="thanks-emoji" value="🤩" style="opacity: 0">
                        <label for="emoji4">🤩</label>
                      </li>
                      <li>
                        <input id="emoji5" type="radio" name="thanks-emoji" value="😌" style="opacity: 0">
                        <label for="emoji5">😌</label>
                      </li>
                    </ul>
                    <button class="btn btn-default" style="border-radius: 5px; border: none; background: #f37022; margin: .6rem 0;" onclick="submitThanks(event)">Send</button>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
        <script type="text/javascript">
          let x = document.getElementsByClassName("message-tab");
          const tabsCount = x.length;
          let msgCurrentTab = 0

          function showTab(n) {
            x[n].style.display = "block";
            if (n == 0) {
              document.getElementById("msg-prev-btn").style.display = "none";
            } else {
              document.getElementById("msg-prev-btn").style.display = "inline";
            }
            if (n == (x.length - 1)) {
              document.getElementById("msg-next-btn").style.display = "none";
            } else {
              document.getElementById("msg-next-btn").style.display = "inline";
            }
            fixStepIndicator(n)
          }

          function msgNextPrevTab(e, n) {
            if (e) e.preventDefault();
            if (msgCurrentTab + n >= x.length) {
              return false;
            } else {
              x[msgCurrentTab].style.display = "none";
              msgCurrentTab = Math.max(0, Math.min(tabsCount - 1, Number(msgCurrentTab + n)));
            }
            showTab(msgCurrentTab);
          }

          function fixStepIndicator(n) {
            var i, x = document.getElementsByClassName("vm-step");
            for (i = 0; i < x.length; i++) {
              x[i].className = x[i].className.replace(" active", "");
            }
            x[n].className += " active";
          }
          const class$ = str => document.getElementsByClassName(str);
          const id$ = str => document.getElementById(str);
          const screen_size = window.matchMedia('(max-width: 768px)')
          let vmIframe = id$('virtual-message-app')
          let popup = id$('virtual-message-popup')
          let editMsg = id$('edit-msg')
          var previewMessage = id$('preview-message-text')
          var target;
          var qrcode;
          let vmUploaded;
          toggleVMPopup = e => {
            if (e) e.preventDefault();
            id$('edit-msg').style.display = 'inline'
            if (popup.classList.contains('fading-in')) {
              vmIframe.contentWindow.postMessage({
                close_popup: true
              }, "https://app.giftr.my");
              msgNextPrevTab(undefined, -1)
              const msg = (messageValue === '' && !vmUploaded) ? 'Blank message card will be sent along with the gift' : messageValue
              previewMessage.innerHTML = msg
            } else {
              showTab(msgCurrentTab)
              if (screen_size.matches) {
                window.history.pushState("forward", null, "")
              }
            }
            [id$('virtual-message-overlay'), popup].forEach(el => {
              el.classList.toggle('fading-in')
            })
          }
          $(window).on('popstate', e => {
            if (document.getElementById('vm-page-preview').classList.contains('fading-in')) {
              $('textarea[name="thanks-message"]').val('');
              $('input[name="thanks-emoji"]:checked').prop('checked', false);
              $('#vm-thanks button').prop('disabled', false).text('Send');
              document.getElementById('vm-page-preview-overlay').classList.toggle('fading-in')
              document.getElementById('vm-page-preview').classList.toggle('fading-in')
            }
            if (popup.classList.contains('fading-in')) {
              vmIframe.contentWindow.postMessage({
                close_popup: true
              }, "https://app.giftr.my");
              [id$('virtual-message-overlay'), popup].forEach(el => {
                el.classList.toggle('fading-in')
              })
              msgNextPrevTab(undefined, -1)
              const msg = (messageValue === '' && !vmUploaded) ? 'Blank message card will be sent along with the gift' : messageValue
              previewMessage.innerHTML = msg
            }
          })
          window.addEventListener('message', e => {
            if (e.origin !== 'https://app.giftr.my') {
              return
            }
            if (e.data && e.data.fileUrl) {
              vmUploaded = true
              const {
                fileUrl
              } = e.data;
              document.getElementById('preview-qrcode-container').style.display = 'block'
              if (!qrcode) {
                qrcode = new QRCode(document.getElementById("preview-vm-qrcode"), fileUrl);
              } else {
                qrcode.clear();
                qrcode.makeCode(fileUrl)
              }
              if (screen_size.matches) {
                window.history.back()
              } else {
                toggleVMPopup();
              }
              if (e.data.fileUrl) {
                id$('vm-input').value = fileUrl;
              }
              if (e.data.fileLink) {
                $('#vm-full-link').val(e.data.fileLink)
              }
            }
            if (e.data && e.data.vmRecording) {
              document.getElementById("msg-prev-btn").style.display = "none";
            } else {
              document.getElementById("msg-prev-btn").style.display = "inline";
            }
            if (e.data && e.data.skipAndSubmit) {
              $('#vm-full-link').val('')
              if ($('#message').val()) {
                document.getElementById('preview-qrcode-container').style.display = 'block'
                if (!qrcode) {
                  qrcode = new QRCode(document.getElementById("preview-vm-qrcode"), 'virtual message');
                } else {
                  qrcode.clear();
                  qrcode.makeCode('virtual message')
                }
              } else {
                document.getElementById('preview-qrcode-container').style.display = 'none'
              }
              id$('vm-input').value = 'N/A';
              vmUploaded = false
              if (screen_size.matches) {
                window.history.back()
              } else {
                toggleVMPopup();
              }
            }
          })
          const messageBox = document.getElementById('message')
          let messageValue = ''

          function receipientMessageChanged() {
            messageValue = messageBox.value;
          }
          if (messageBox) {
            messageBox.addEventListener("input", receipientMessageChanged);
            document.getElementById("list").addEventListener("change", receipientMessageChanged);
          }

          function onEditTextMessage() {
            if ($('#vm-input').val() && $('#vm-input').val() !== 'N/A') {
              return
            }
            document.getElementById('preview-qrcode-container').style.display = 'block'
            if (!qrcode) {
              qrcode = new QRCode(document.getElementById("preview-vm-qrcode"), 'virtual message');
            } else {
              qrcode.clear();
              qrcode.makeCode('virtual message')
            }
            $('#preview-vm').css('display', 'inline');
          }
          // VM PAGE PREVIEW
          const vid = document.getElementById('video');
          const vdownload = document.getElementById('dl-link');
          const adownload = document.getElementById('a-dl-link');
          async function downloadMedia(link) {
            const response = await fetch(link)
            const r = await response.blob()
            return r
          }
          async function toggleVMPreview(e) {
            if (e) {
              e.stopPropagation();
              e.preventDefault();
            }
            if (document.getElementById('vm-page-preview').classList.contains('fading-in')) {
              $('textarea[name="thanks-message"]').val('');
              $('input[name="thanks-emoji"]:checked').prop('checked', false);
              $('#vm-thanks button').prop('disabled', false).text('Send');
            }
            document.getElementById('vm-page-preview-overlay').classList.toggle('fading-in')
            document.getElementById('vm-page-preview').classList.toggle('fading-in')
            if ($('#message').val()) {
              $('.message').text($('#message').val());
            }
            if (screen_size.matches) {
              window.history.pushState("forward", null, "")
            }
            $('#yt-embed, #v-info, #c-video, .c-audio, #c-image').addClass('hide');
            let vmLink = $('#vm-full-link').val()
            if (!vmLink) {
              return
            }
            if (vmLink.includes('youtube')) {
              let iframe = document.createElement('iframe');
              iframe.src = vmLink
              $('#yt-embed').append(iframe)
              $('#yt-embed').removeClass('hide');
            } else {
              let media = await fetch(vmLink).then(response => {
                return {
                  src: response.url,
                  content_type: response.headers.get('content-type')
                }
              }).catch(err => console.log(err))
              if (media.content_type.includes("video")) {
                let source = document.createElement('source');
                source.src = media.src + '#t=0.001'
                source.type = media.content_type;
                $('#video').append(source);
                downloadMedia(media.src, "video/mp4").then((r) => {
                  vdownload.setAttribute('href', window.URL.createObjectURL(r));
                });
                $('#c-video').removeClass('hide');
                $('#v-info').removeClass('hide');
              } else if (media.content_type.includes("audio")) {
                wavesurfer.load(media.src)
                $('.c-audio').removeClass('hide');
                if (navigator.userAgent.match('CriOS')) { //for ios Chrome
                  downloadMedia(media.src).then((r) => {
                    adownload.addEventListener('touchstart', downloadChrome(event, r));
                  });
                } else {
                  downloadMedia(media.src).then((r) => {
                    adownload.setAttribute('href', window.URL.createObjectURL(r));
                  });
                }
              } else if (media.content_type.includes("image")) {
                $('#image').attr('src', media.src);
                $('#c-image').removeClass('hide');
              }
            }
          }

          function submitThanks(e) {
            e.preventDefault();
            e.stopPropagation();
            let thanksMessage = $('textarea[name="thanks-message"]').val();
            let thanksEmoji = $('input[name="thanks-emoji"]:checked').val();
            if (thanksMessage || thanksEmoji) {
              $('#vm-thanks button').prop('disabled', true).text('Message Successfully Sent to Sender!');
            }
          }
          //CURRENT TIME
          const currentTime = (value) => {
            minute = Math.floor(value / 60);
            second = Math.floor(value - minute * 60);
            if (second < 10) {
              second = "0" + second;
            }
            return minute + ":" + second;
          }
          /* AUDIO */
          var wavesurfer = WaveSurfer.create({
            container: '#waveform',
            waveColor: '#f5f5f5',
            progressColor: '#81d8d0',
            barWidth: 3,
            height: 90,
            responsive: true,
            hideScrollbar: true,
            ignoreSilenceMode: true,
            cursorWidth: 0,
            barRadius: 3,
          });
          //Play and pause
          wavesurfer.on('play', function() {
            $('#playPauseButton').toggleClass('pause');
          });
          wavesurfer.on('pause', function() {
            $('#playPauseButton').toggleClass('pause');
          });
          $('#playPauseButton').on({
            click: function(e) {
              e.preventDefault();
              wavesurfer.playPause();
            },
            touchstart: function(e) {
              e.preventDefault();
              wavesurfer.playPause();
            }
          })
          //Audio Time Update
          wavesurfer.on('ready', function() {
            $('#a-duration').html(currentTime(wavesurfer.getDuration()))
          })
          wavesurfer.on('audioprocess', function() {
            $('#a-current').html(currentTime(wavesurfer.getCurrentTime()))
          })
          //Volume Slider
          $("#a-slider").slider({
            orientation: "vertical",
            min: 0,
            max: 100,
            value: 100,
            range: "min",
            slide: function(event, ui) {
              wavesurfer.setVolume(ui.value / 100);
            }
          });

          function audioButton(e) {
            e.preventDefault();
            if ($('#a-slider').css('visibility') !== 'visible') {
              $('#a-slider').css('visibility', 'visible');
            } else {
              $('#a-slider').css('visibility', 'hidden');
            }
          }
          /* VIDEO */
          //Seek
          $("#seek-slider").slider({
            min: 0,
            max: 100,
            value: 0,
            range: "min",
            slide: function(event, ui) {
              vid.currentTime = vid.duration * (ui.value / 100);
            }
          })

          function seektimeupdate() {
            $("#seek-slider").slider('value', (vid.currentTime * (100 / vid.duration)))
          }
          //Play & Pause
          function playPause(e) {
            e.preventDefault();
            if (!vid.paused) {
              vid.pause();
            } else {
              vid.play();
            }
          }
          //Volume Button
          $('#c-video').mouseleave(function() {
            if ($('#vol-slider').css('visibility') == 'visible') {
              $('#vol-slider').css('visibility', 'hidden');
            }
          })
          $("#vol-slider").slider({
            orientation: "vertical",
            min: 0,
            max: 100,
            value: 100,
            range: "min",
            slide: function(event, ui) {
              vid.volume = (ui.value / 100);
            }
          });

          function volumeButton(e) {
            e.preventDefault();
            if ($('#vol-slider').css('visibility') !== 'visible') {
              $('#vol-slider').css('visibility', 'visible');
            } else {
              $('#vol-slider').css('visibility', 'hidden');
            }
          }
          //Fullscreen
          function fullscreen(e) {
            e.preventDefault();
            let userAgent = navigator.userAgent;
            if (userAgent.match(/firefox|fxios/i)) {
              if (!vid.mozFullScreen) {
                vid.mozRequestFullScreen();
              } else {
                vid.mozCancelFullScreen();
              }
            } else { //Chrome, Safari, Edge
              if (!vid.webkitDisplayingFullscreen) {
                vid.webkitEnterFullscreen();
              } else {
                vid.webkitExitFullscreen();
              }
            }
          }
          //Video Events
          $('#video').on({
            touchstart: function(e) {
              e.preventDefault();
              if ($('.v-controls').css('transform') !== 'matrix(1, 0, 0, 1, 0, 1)') {
                $('.v-controls').css('transform', 'matrix(1, 0, 0, 1, 0, 1)');
              } else {
                $('.v-controls').css('transform', 'matrix(1, 0, 0, 1, 0, 52.2)');
              }
            },
            canplay: function() {
              $('#v-duration').html(currentTime(vid.duration));
            },
            play: function() {
              $('#play-pause').toggleClass('pause');
            },
            pause: function() {
              $('#play-pause').toggleClass('pause');
            },
            timeupdate: function() {
              seektimeupdate();
              $('#v-current').html(currentTime(vid.currentTime));
            }
          })
        </script>
      </div>
      <div class="col-xs-12">
        <hr>
      </div>
      <script>
        let carousels = [];
        let giftBoxId = 7892554317985;
        let giftBoxTitle = `Raya 2024 Raya Surprise Basket 1 (Klang Valley Delivery)`;
        let giftBoxPrice = 17900;
        let giftBoxWeight = 0;
        let giftBoxImage = '//giftr.my/cdn/shop/products/Mar_Anw-BA646.jpg?v=1710211115';
        let isUpdate = false;
        let cartIndex;
        let cartLineId;
        let touchCoordinates = {}
      </script>
      <script src="//giftr.my/cdn/shop/t/23/assets/product-addon.script.js?v=90897103383800071701699325711"></script>
      <div class="product-info-overlay info-popup" onclick="closeInfoPopup(event)"></div>
      <div class="product-info-popup info-popup">
        <div class="product-info-container">
          <div class="row">
            <div class="col-md-5 col-xs-12">
              <div class="product-info-image-container">
                <div class="row">
                  <div id="product-info-image" class="col-sm-12 product-image">
                    <div class="product-image-inner row">
                      <div class="product-image-container">
                        <a class="featured-image show-media" style="display: none;" data-thumb-ind="0">
                    <img id="product-featured-image" class="product-info-featured-image" src="//giftr.my/cdn/shop/products/Mar_Anw-BA646_1024x1024.jpg?v=1710211115" data-zoom-image="//giftr.my/cdn/shop/products/Mar_Anw-BA646_1024x1024.jpg?v=1710211115" alt="Raya 2024 Raya Surprise Basket 1 (Klang Valley Delivery)">
                  </a>
                      </div>
                      <div class="more-view-image">
                        <div id="product-info-gallery-image" class="gallery-image-thumb">
                        </div>
                        <div id="dot-container" class="owl-dots">
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            <div class="col-md-7 col-xs-12">
              <h1 class="page-heading" id="product-info-title"></h1>
              <div class="price-wrapper">
                <div class="product-price">
                  <div class="detail-price" id="product-info-price"></div>
                </div>
              </div>
              <div role="tabpanel" class="tab-pane active" id="product-info-desc"></div>
              <div id="product-info-customization"></div>
            </div>
          </div>
          <i class="fa fa-close fa-2x product-info-close" onclick="closeInfoPopup(event)"></i>
          <div class="product-info-add-wrapper">
            <div class="quantity">
              <input type="number" id="quantity" class="product-info item-quantity" value="1">
              <span class="qty-wrapper">
                <span class="qty-inner">
                  <span class="qty-up" title="Increase" data-src="#quantity">
                    <i class="fa fa-plus"></i>
                  </span>
                  <span class="qty-down" title="Decrease" data-src="#quantity">
                    <i class="fa fa-minus"></i>
                  </span>
                </span>
              </span>
            </div>
            <button class="product-info-add btn btn-default" type="button" id="product-info-add">Add</button>
          </div>
        </div>
      </div>
      <div class="col-xs-12">
        <div id="gift-box-info"></div>
        <div class="hidden" id="gift-box-content"></div>
      </div>
    </div>
    <script>
      function countChar(field, count, max) {
        var length = $("#" + field).val().length;
        $("#" + count).text(length + "/" + max + " characters")
      }

      function getOffDays() {
        var off = [];
        return off
      }

      function getWeeklyOffDays() {
        var close = [];
        return close
      }
      conditionalize()
    </script>
    <script>
      //deliverOnWeekend
      function initDatePicker(disableDaysOfWeek) {
        $('#date').datepicker('remove');
        var bia = 0;
        var sameDayTag = 'same-day-3pm';
        var blockSat = false
        var blockSun = false
        var offDays = getOffDays();
        var isTodayOff = false;
        var sameDayCutOffTime = 12
        if (sameDayTag) {
          var cutOffHour = sameDayTag.toLowerCase().replace('same-day-', '')
          sameDayCutOffTime = moment(cutOffHour, 'Ha').hour()
        }
        for (i = 0; i < offDays.length; i++) {
          if (moment().utcOffset(8).format("DD/MM/YYYY") == offDays[i]) {
            isTodayOff = true;
          }
        }
        if ((bia == 0 && moment().utcOffset(8).hour() >= sameDayCutOffTime) || (bia == 0 && isTodayOff) || (bia == 0 && blockSat && moment().utcOffset(8).day() == 6) || (bia == 0 && blockSun && moment().utcOffset(8).day() == 0)) {
          bia++;
        }
        let option = {
          format: "dd/mm/yyyy",
          maxViewMode: 0,
          startDate: moment().utcOffset(8).add(bia, 'days').format("DD/MM/YYYY"),
          endDate: moment().utcOffset(8).add(60, 'days').format("DD/MM/YYYY"),
          datesDisabled: offDays
        }
        if (disableDaysOfWeek) {
          option.daysOfWeekDisabled = disableDaysOfWeek.concat(getWeeklyOffDays())
        } else {
          option.daysOfWeekDisabled = getWeeklyOffDays()
        }
        $('#date').datepicker(option);
        $('#date').datepicker('update');
        $('#date').attr("placeholder", "Please select delivery date")
      }
    </script>
    <div class="qty-add-cart" style="margin-bottom:15px">
      <div class="quantity-product">
        <div class="quantity">
          <input type="number" id="quantity" class="item-quantity" name="quantity" value="1">
          <span class="qty-wrapper">
            <span class="qty-inner">
              <span class="qty-up" title="Increase" data-src="#quantity">
                <i class="fa fa-plus"></i>
              </span>
              <span class="qty-down" title="Decrease" data-src="#quantity">
                <i class="fa fa-minus"></i>
              </span>
            </span>
          </span>
        </div>
      </div>
      <div class="action-button">
        <button style="display: none; margin-bottom: 5px" id="add-to-cart" class="add-to-cart btn btn-default" type="button">Add To Cart</button>
        <input id="submit-hidden" type="submit" style="display: none">
        <button id="validation-add-to-cart" style="background: #f37022; border-color: #f37022; min-width: 250px; margin-bottom: 5px; text-transform: capitalize;" class="validation-add-to-cart btn btn-default" type="button">Add to cart</button>
        <div style="display: inline-block; border: solid 1px #81d8d0; vertical-align: top">
          <button id="add-to-giftlist" class="add-to-giftlist btn btn-default" style="background-color: #81d8d0;border: 0" onclick="giftlistItemAdd(event)"> Add to Giftlist</button><span id="prod-glc"
            style="vertical-align: middle; padding: 10px 8px; line-height:100%;">0</span>
        </div>
        <script id="giftlist-button-scripts">
          const prodGLC = null

          function giftlistButtonChange() { // this is executed in selectOptionsCallback function for every product template
            setTimeout(() => {
              const params = new URLSearchParams(window.location.search);
              const currentVariantId = params.get('variant') || '43899629404321'
              const currentVariant = currentProductVariants.find(v => v.varId === currentVariantId)
              const addButton = $('#add-to-giftlist')
              $('#prod-glc').text(prodGLC && prodGLC[currentVariantId] ? prodGLC[currentVariantId] : 0)
              const currentGiftlist = JSON.parse(localStorage.getItem('' === '' ? 'giftlist' : 'login-giftlist'))
              if (currentGiftlist && currentGiftlist.map(i => i.varId).includes(currentVariantId)) {
                addButton.addClass('no-before').text("Added to Giftlist").prop("disabled", true);
              } else if (!currentVariant.varAvailable) {
                addButton.removeClass('no-before').text(" Notify Me When Back In Stock").prop("disabled", false).attr("onclick", "notifyCTA(event)");
              } else {
                addButton.removeClass('no-before').text(" Add to Giftlist").prop("disabled", false).attr("onclick", "giftlistItemAdd(event)");
              }
            }, 50)
          }
          giftlistButtonChange();
        </script>
      </div>
      <a id="bulkLink" href="/pages/giftr-for-business?product_url=https://giftr.my/products/raya-2024-raya-surprise-basket-1-klang-valley-delivery?ml_recipient=115668014596097737&amp;ml_link=115668013162694505&amp;utm_source=newsletter&amp;utm_medium=email&amp;utm_term=2024-03-13&amp;utm_campaign=Raya+2024+Corporate+Hampers+Gifts+"><img class="img-responsive center-block" style="width:20px;height:20px; float:left; margin-right:3px;" src="https://cdn.shopify.com/s/files/1/1428/2106/files/information.png?7688014946902365522" alt="giftr for business"><span>Click here to order in bulk</span></a>
      <script>
        const bulkUrl = `/pages/giftr-for-business?product_url=${window.location.href}`
        $('#bulkLink').attr("href", bulkUrl)
      </script>
    </div>
  </div>
</form>

POST

<form method="post" id="new-review-form_7892554317985" class="new-review-form" aria-expanded="false" onsubmit="event.preventDefault(); StampedFn.submitForm(this);" style="display: none;border: 1px solid #dddddd4d;padding: 15px"> <input type="hidden"
    name="productId" value="7892554317985">
  <div class="stamped-form-title" style=" display:none;">Write a review</div>
  <fieldset class="stamped-form-contact">
    <legend style="display:none;">Author</legend>
    <div class="stamped-form-contact-name"> <label class="stamped-form-label" for="review_author_7892554317985">Name</label> <input class="stamped-form-input stamped-form-input-text " id="review_author_7892554317985" type="text" name="author"
        required="" value="" placeholder="Enter your name" autocomplete="name"> </div>
    <div class="stamped-form-contact-email"> <label class="stamped-form-label" for="review_email_7892554317985">Email</label> <input class="stamped-form-input stamped-form-input-email " id="review_email_7892554317985" type="email" name="email"
        required="" value="" placeholder="john.smith@example.com" autocomplete="email"> </div>
    <div class="stamped-form-contact-location"> <label class="stamped-form-label" for="review_location_7892554317985">Location</label> <input class="stamped-form-input stamped-form-input-text " id="review_location_7892554317985" type="text"
        name="location" value="" placeholder="e.g Paris, France" autocomplete="shipping country"> </div>
  </fieldset>
  <fieldset class="stamped-form-review">
    <legend style="display:none;">Rating</legend>
    <div class="stamped-form-review-rating"> <label class="stamped-form-label" for="reviewRating">Rating</label> <input type="text" id="reviewRating" name="reviewRating"
        style="font-size: 0px; border: none; height: 1px; width: 1px; margin: 0; padding: 0; line-height: 0px; min-height: 0px;" required="">
      <div class="stamped-form-input stamped-starrating">
        <a href="#" onclick="StampedFn.setRating(this);return false;" onkeydown="StampedFn.setRating(this);return false;" role="button" tabindex="0" class="stamped-fa stamped-fa-star-o" data-value="1"><span style="display:none;">1</span></a>
        <a href="#" onclick="StampedFn.setRating(this);return false;" onkeydown="StampedFn.setRating(this);return false;" role="button" tabindex="0" class="stamped-fa stamped-fa-star-o" data-value="2"><span style="display:none;">2</span></a>
        <a href="#" onclick="StampedFn.setRating(this);return false;" onkeydown="StampedFn.setRating(this);return false;" role="button" tabindex="0" class="stamped-fa stamped-fa-star-o" data-value="3"><span style="display:none;">3</span></a>
        <a href="#" onclick="StampedFn.setRating(this);return false;" onkeydown="StampedFn.setRating(this);return false;" role="button" tabindex="0" class="stamped-fa stamped-fa-star-o" data-value="4"><span style="display:none;">4</span></a>
        <a href="#" onclick="StampedFn.setRating(this);return false;" onkeydown="StampedFn.setRating(this);return false;" role="button" tabindex="0" class="stamped-fa stamped-fa-star-o" data-value="5"><span style="display:none;">5</span></a> </div>
    </div>
    <div class="stamped-form-review-title"> <label class="stamped-form-label" for="review_title_7892554317985">Title of Review</label> <input class="stamped-form-input stamped-form-input-text" id="review_title_7892554317985" type="text"
        name="reviewTitle" required="" value="" placeholder="Give your review a title"> </div>
    <div class="stamped-form-review-body"> <label class="stamped-form-label" for="review_body_7892554317985">How was your overall experience?</label>
      <div class="stamped-form-input"> <textarea class="stamped-form-input stamped-form-input-textarea" id="review_body_7892554317985" data-product-id="7892554317985" name="reviewMessage" required="" rows="10" maxlength="5000"></textarea> </div>
    </div>
  </fieldset>
  <fieldset class="stamped-form-custom-questions">
    <legend style="display:none;">Questions</legend>
  </fieldset>
  <fieldset class="stamped-form-actions">
    <legend style="display:none;">Photos</legend> <span class="stamped-file-holder"> </span> <span class="stamped-file-uploader" style="display:none;"> <label for="stamped-file-uploader-input"> <span style="display:none;">Upload</span> <input
          id="stamped-file-uploader-input" type="file" name="stamped-file-uploader-input" class="stamped-file-uploader-input" multiple="" data-product-id="7892554317985" style="display:none;"> <span class="stamped-file-uploader-btn"
          style="border:1px solid #333;padding: 6px 10px; font-size:13px; border-radius: .3em;"> <i class="stamped-fa stamped-fa-camera"></i> <span class="stamped-file-uploader-btn-label2"></span> </span> </label> </span> <span
      class="stamped-file-loading hide" style="display:none;"> <i class="fa fa-spinner fa-spin"></i> </span> <input id="stamped-button-submit" type="submit" class="stamped-button stamped-button-primary button button-primary btn btn-primary"
      value="Submit">
  </fieldset>
</form>

POST https://assets.mailerlite.com/jsonp/598675/forms/102456559107311234/subscribe

<form class="ml-block-form" action="https://assets.mailerlite.com/jsonp/598675/forms/102456559107311234/subscribe" data-code="" method="post" target="_blank">
  <div class="ml-form-formContent">
    <div class="ml-form-fieldRow ml-last-item">
      <div class="ml-field-group ml-field-email ml-validate-email ml-validate-required">
        <!-- input -->
        <input aria-label="email" aria-required="true" type="email" class="form-control" data-inputmask="" name="fields[email]" placeholder="Email" autocomplete="email" aria-invalid="false">
        <!-- /input -->
        <!-- textarea -->
        <!-- /textarea -->
        <!-- select -->
        <!-- /select -->
        <!-- checkboxes -->
        <!-- /checkboxes -->
        <!-- radio -->
        <!-- /radio -->
        <!-- countries -->
        <!-- /countries -->
      </div>
    </div>
  </div>
  <!-- Privacy policy -->
  <!-- /Privacy policy -->
  <input type="hidden" name="ml-submit" value="1" aria-invalid="false">
  <div class="ml-form-embedSubmit">
    <button type="submit" class="primary">Subscribe</button>
    <button disabled="disabled" style="display: none;" type="button" class="loading">
      <div class="ml-form-embedSubmitLoad"></div>
      <span class="sr-only">Loading...</span>
    </button>
  </div>
  <input type="hidden" name="anticsrf" value="true" aria-invalid="false">
</form>

POST /cart/add

<form action="/cart/add" method="post" class="variants" id="qs-product-action" enctype="multipart/form-data">
  <div id="qs-product-variants" class="variants-wrapper"></div>
  <div class="quantity-product">
    <div class="quantity"></div>
  </div>
  <div class="qs-product-button">
    <div class="qs-action">
      <button id="qs-add-cart" class="btn btn-default add-to-cart" type="submit" name="add">Add to cart</button>
    </div>
  </div>
</form>

GET /pages/search-results-page

<form id="search" class="navbar-form search" action="/pages/search-results-page" method="get">
  <input type="hidden" name="type" value="product">
  <input id="bc-product-search" type="text" name="q" class="form-control snize-input-style" placeholder="I am looking for...." autocomplete="off">
  <button type="submit" class="search-icon">Search</button>
</form>

#

<form id="g-email-form" action="#">
  <input type="text" name="from" value="" placeholder="From Name" required="">
  <input type="email" name="to_email" value="" placeholder="To Email Address" required="">
  <textarea placeholder="Hey there! Check out my Giftlist." name="email_content" id="g-email-note" cols="30" rows="10"></textarea>
  <button type="submit" class="g-email-submit">Send Email</button>
</form>

Text Content

 * Occasions
   Hari Raya 2024
   Birthday
   Anniversary
   Get Well Soon
   Grand Opening / New Business
   Cheer Up !
   Congratulatory
   Covid-19: Self Care & Stay Safe Gifts
   Graduation
   Wedding
   Proposal
   Housewarming
   Love & Romance
   Thank You / Appreciation
   Farewell
   Condolences
   
   
 * Min. Booking Days
   * On-Demand Delivery
     * KL & Selangor
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Penang
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Johor
       * Johor Bahru
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Muar & Batu Pahat
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Rest of Johor
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Perak
       * Ipoh
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Kampar & Taiping
         * Next Day Delivery
         * Min. 2 Days Booking
     * Melaka
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Negeri Sembilan
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Pahang
       * Kuantan
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Genting Highlands
     * Kuching
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Kota Kinabalu
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Kedah
       * Sungai Petani & Kulim
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Langkawi
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Alor Setar
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Kelantan
       * Kota Bharu
       * Pasir Mas
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Terengganu
       * Kuala Terengganu
         * Same Day Delivery
   * Nationwide Delivery
 * For Who
   For Him
    * 
   
   For Her
    * 
   
   For Kids
    * 
   
   For Newborn
    * 
   
   For Pets
    * 
   
   For Business
    * 

 * Budget
   * Under RM100
   * RM100 - RM200
   * RM200 - RM300
   * RM300 & Above
 * Gift Types
   Personalised Gifts
   Hamper
   Fruit Basket
   Chocolates
   Wine & Champagne
   Flower Bouquet
   Flower Boxes
   Flower Stand
   Preserved Flower
   Artificial Flower
   Food & Snacks
   Artisan Cakes & Brownies
   Designer Cakes
   Macarons
   Health & Wellness
   Baby Goods
   Home & Living
   Balloons
   Gift Cards & Vouchers
   Accessories
   Soft Toys
   Toys
   Games
   Food Bouquet
   Skincare & Cosmetics
   Fashion
   Patisserie Tower
   Greeting Cards
   Experiences
   Corporate Gifts/Bulk Purchase
   [NEW] Build Your Own Gift Box
   New Arrivals
   Best Sellers
   Exclusive Offer
   Giftr's Gift Card
   Giftr for Business
   Browse All Gifts
   Campaign & Partnership
 * Browse All Gifts
 * Login/Register
 * Track Order
 * Giftr for Business
 * Sell On Giftr

X

PLACE YOUR ORDER BEFORE 3PM FOR CURATED SAME DAY DELIVERY COLLECTION HERE:

Surprise Someone Now
MENU

MYR
 * MYR
 * SGD
 * BND
 * GBP
 * USD
 * INR
 * AUD
 * NZD
 * CAD

MYR SGD BND GBP USD INR AUD NZD CAD
0RM0.00

MYR
 * MYR
 * SGD
 * BND
 * GBP
 * USD
 * INR
 * AUD
 * NZD
 * CAD

MYR SGD BND GBP USD INR AUD NZD CAD

 * Welcome to Giftr
 * Track Order
 * Giftr for Business
 * Sell on Giftr
 * My Account
 * Giftlist Giftlist
 * Feedback
 * Blog
 * Login

All Gifts

Follow us Socials
 * 
 * 
 * 


0RM0.00
 * 
 * Occasions
   Hari Raya 2024
   Birthday
   Anniversary
   Get Well Soon
   Grand Opening / New Business
   Cheer Up !
   Congratulatory
   Covid-19: Self Care & Stay Safe Gifts
   Graduation
   Wedding
   Proposal
   Housewarming
   Love & Romance
   Thank You / Appreciation
   Farewell
   Condolences
   
   
 * Min. Booking Days
   * On-Demand Delivery
     * KL & Selangor
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Penang
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Johor
       * Johor Bahru
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Muar & Batu Pahat
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Rest of Johor
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Perak
       * Ipoh
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Kampar & Taiping
         * Next Day Delivery
         * Min. 2 Days Booking
     * Melaka
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Negeri Sembilan
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Pahang
       * Kuantan
         * Same Day Delivery
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Genting Highlands
     * Kuching
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Kota Kinabalu
       * Same Day Delivery
       * Next Day Delivery
       * Min. 2 Days Booking
       * Min. 3 Days Booking
     * Kedah
       * Sungai Petani & Kulim
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Langkawi
         * Min. 2 Days Booking
         * Min. 3 Days Booking
       * Alor Setar
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Kelantan
       * Kota Bharu
       * Pasir Mas
         * Next Day Delivery
         * Min. 2 Days Booking
         * Min. 3 Days Booking
     * Terengganu
       * Kuala Terengganu
         * Same Day Delivery
   * Nationwide Delivery
 * For Who
   For Him
    * 
   
   For Her
    * 
   
   For Kids
    * 
   
   For Newborn
    * 
   
   For Pets
    * 
   
   For Business
    * 

 * Budget
   * Under RM100
   * RM100 - RM200
   * RM200 - RM300
   * RM300 & Above
 * Gift Types
   Personalised Gifts
   Hamper
   Fruit Basket
   Chocolates
   Wine & Champagne
   Flower Bouquet
   Flower Boxes
   Flower Stand
   Preserved Flower
   Artificial Flower
   Food & Snacks
   Artisan Cakes & Brownies
   Designer Cakes
   Macarons
   Health & Wellness
   Baby Goods
   Home & Living
   Balloons
   Gift Cards & Vouchers
   Accessories
   Soft Toys
   Toys
   Games
   Food Bouquet
   Skincare & Cosmetics
   Fashion
   Patisserie Tower
   Greeting Cards
   Experiences
   Corporate Gifts/Bulk Purchase
   [NEW] Build Your Own Gift Box
   New Arrivals
   Best Sellers
   Exclusive Offer
   Giftr's Gift Card
   Giftr for Business
   Browse All Gifts
   Campaign & Partnership
 * Browse All Gifts

0
 * Giftr - Malaysia's Leading Online Gift ShopHome
 * Raya 2024 Raya Surprise Basket 1 (Klang Valley Delivery)
 * Raya 2024 Raya Surprise Basket 1 (Klang Valley Delivery)

Raya 2024 Raya Surprise Basket 1 (Klang Valley Delivery)



RAYA 2024 RAYA SURPRISE BASKET 1 (KLANG VALLEY DELIVERY)

Carnations Florist & Gifts Ask Vendor a Question

Ask the Vendor a Question

Carnations Florist & Gifts

Login to start a conversation.

Login / Sign Up




RM179.00
USE CODE: GF10RAYA24Copy

Enjoy RM10 OFF this item with min. purchase of RM 200.00. Limit to 1 use per
customer. Valid till 19 Mar 2024. Apply during checkout.


Top-rated Seller (4.5/5 ★)
Delivery Included
Same Day Delivery
Free Personalised
Message Card

Select Delivery AreaZone AZone BZone CZone DZone E
Zone A Zone B Zone C Zone D Zone E
Delivery Date* Please select delivery date Click here for terms & delivery time
There are no add ons
Message on CardNew
Preview:

Your text message will appear here. Click to create your message.

Scan here for virtual message



Click to View

Edit Message Preview Virtual Message Page



STEP 1: ADD A TEXT MESSAGE

Text Message Template Write my own message Leave it Blank Hari Raya Malay #1
Hari Raya Malay #2 Hari Raya Malay #3 Hari Raya English #1 Hari Raya English #2
Hari Raya English #3 --> --> --> Birthday #1 Birthday #2 Birthday #3 Love Wishes
#1 Love Wishes #2 Love Wishes #3 Anniversary #1 Anniversary #2 Anniversary #3
Anniversary #4 Best Wishes #1 Best Wishes #2 Best Wishes #3 Appreciation #1
Appreciation #2 Appreciation #3 Congratulatory #1 Congratulatory #2
Congratulatory #3 Grand Opening #1 Grand Opening #2 Grand Opening #3 Get Well
Soon #1 Get Well Soon #2 Get Well Soon #3 Newborn #1 Newborn #2 Newborn #3
Apology #1 Apology #2 Apology #3 Cheer Up #1 Cheer Up #2 Cheer Up #3 Graduation
#1 Graduation #2 Graduation #3 Housewarming #1 Housewarming #2 Housewarming #3
Condolences #1 Condolences #2 Condolences #3
Text Message

250 Characters Max


STEP 2: ADD A VIRTUAL MESSAGE





[PREVIEW] The receiver will see this virtual message page when they scan the QR
code on printed message card


JUST FOR YOU



Uploaded media is available for 3 months only. You may download a copy for your
own reference 🙂

0:00 / 0:00



Uploaded media is available for 3 months only. You may download a copy for your
own reference 🙂

0:00 / 0:00



Uploaded media is available for 3 months only. You may download a copy for your
own reference 🙂



Say something to thank the sender:

Or simply click the icon below to express your gratitude:

 * 😃
 * 🥰
 * 😱
 * 🤩
 * 😌

Send

--------------------------------------------------------------------------------



Add

Add To Cart Add to cart
Add to Giftlist0
Click here to order in bulk

Price Match Guarantee Product price(s) shown here are the same or lower than the
selling price of products listed on the seller's own online store so you can get
similar value with seamless gifting experience.

Secured Payments



Best Curated Gifts

--------------------------------------------------------------------------------


Drop a Hint:
 * 
 * 
 * 
   
 * 
 * Save

 * Availability: In stock
   
 * Type: Hamper

DESCRIPTION

 * Basket of Raya Hamper to surprise love ones. Basket can be used as food
   cover.
 * Item include 1 box teh boh songket, 3 type raya cookies-tart
   nenas,sugee,almond london.




Delivery Areas:

 * Zone A - KL/PJ/Bangsar/TTDI/Ampang/Seputeh/Batu Caves
 * Zone B - Cheras/Bukit Jalil/Desa Petaling/Jln Kunchai Lama
 * Zone C - Sg Besi/Serdang/Sg Buloh/Puchong/Subang/Hulu Langat/Seri
   Kembangan/Kajang/Shah Alam/Bangi/Rawang/Putrajaya/Cyberjaya
 * Zone D - Klang/Puncak Alam/Dengkil/Semenyih
 * Zone E - Port Klang

Delivery Fine Prints:

 * Same day delivery available
 * Delivery time is from 10am to 5pm. No specific time of delivery.



REVIEWS

Customer Reviews
0.0 Based on 0 Reviews
5 ★
0% 
0
4 ★
0% 
0
3 ★
0% 
0
2 ★
0% 
0
1 ★
0% 
0
Customer Photos



Write a Review Ask a Question
 * Reviews
 * Questions

Write a review
Author
Name
Email
Location
Rating
Rating
1 2 3 4 5
Title of Review
How was your overall experience?

Questions Photos Upload

Thank you for submitting a review!

Your input is very much appreciated. Share it with your friends so they can
enjoy it too!

FacebookTwitter
Be the first to review this item
Sort Most Recent Highest Rating Lowest Rating Most Helpful
Filter Reviews:
×
Sort Most Recent Highest Rating Lowest Rating Most Helpful
Clear filter
More Filters


Buy Now
Total Price:RM0.00
Continue Shopping
Proceed to Checkout



RECENTLY VIEWED




FROM THE SAME STORE

 * 
   Mother's Love Carnations Florist & Gifts
   RM139.00 - RM179.00
   KL/Selangor
   View product
 * 
   Deepavali set 1 (Deepavali 2023) Carnations Florist & Gifts
   RM159.00 - RM199.00
   KL/Selangor
   View product★★★★★2 review(s)
 * 
   [Christmas 2023] Xmas Potted Flowers Poinsettia | (Klang Valley Delivery
   Only) Carnations Florist & Gifts
   RM99.00 - RM139.00
   KL/Selangor
   View product
 * 
   Love You Mum Flower Bouquet (Kang Valley Delivery Only) Carnations Florist &
   Gifts
   RM129.90 - RM169.90
   KL/Selangor
   View product
 * 
   Hari Raya : Lebaran Hari Raya (Klang Valley Delivery Only) Carnations Florist
   & Gifts
   RM199.90 - RM239.00
   KL/Selangor
   View product
 * 
   Festive Fiesta Set 1 Carnations Florist & Gifts
   RM179.90 - RM219.90
   KL/Selangor
   View product
 * 
   Mother's Kisses Set 1 Carnations Florist & Gifts
   RM139.00 - RM179.00
   KL/Selangor
   View product
 * 
   Love Story Flower Bouquet valentine's day 2024 Carnations Florist & Gifts
   RM179.00 - RM229.00
   KL/Selangor
   View product
 * 
   50 Mix Roses handbouquet Valentine's Day 2024 Carnations Florist & Gifts
   RM499.00 - RM549.00
   KL/Selangor
   View product
 * 
   Rainbow (Klang Valley Delivery) Carnations Florist & Gifts
   RM69.90 - RM109.90
   KL/Selangor
   View product
 * 
   Merry Teddy Love Set 1 Carnations Florist & Gifts
   RM159.00 - RM199.00
   KL/Selangor
   View product
 * 
   Love You Mum Gift Set 1 (Klang Valley Delivery Only) Carnations Florist &
   Gifts
   RM149.00 - RM189.00
   KL/Selangor
   View product
 * 
   Rosy Love Flower Bouquet Carnations Florist & Gifts
   RM89.00 - RM129.00
   KL/Selangor
   View product
 * 
   Santa Special (Christmas (Klang Valley Delivery Only) Carnations Florist &
   Gifts
   RM189.00 - RM229.00
   KL/Selangor
   View product
 * 
   Black Forest (Klang Valley Delivery Only) Carnations Florist & Gifts
   RM179.00 - RM229.00
   KL/Selangor
   View product
 * 
   Fruit Lover Box A Carnations Florist & Gifts
   RM139.00 - RM179.00
   KL/Selangor
   View product
 * 
   Xmas Set 3 Carnations Florist & Gifts
   RM199.90 - RM239.90
   KL/Selangor
   View product
 * 
   Mother's Love Set 4 Carnations Florist & Gifts
   RM169.00 - RM209.00
   KL/Selangor
   View product
 * 
   2023 My Love (Klang Valley Delivery Only) Carnations Florist & Gifts
   RM169.00 - RM209.00
   KL/Selangor
   View product
 * 
   Potted Phalaenopsis Orchids Plant Carnations Florist & Gifts
   RM179.00 - RM219.00
   KL/Selangor
   View product
 * 
   Hari Raya : Raya Bamboo Cookie Gifts (Klang Valley Delivery Area) Carnations
   Florist & Gifts
   RM189.00 - RM229.00
   KL/Selangor
   View product
 * 
   Fruits and Nuts Box Carnations Florist & Gifts
   RM129.00 - RM169.00
   KL/Selangor
   View product★★★★★1 review(s)
 * 
   Potted Plant (Klang Valley Delivery) Carnations Florist & Gifts
   RM99.00 - RM139.00
   KL/Selangor
   View product
 * 
   Manggo Lover Bag Carnations Florist & Gifts
   RM89.00 - RM129.00
   KL/Selangor
   View product★★★★★2 review(s)
 * 
   Daisy lover (Klang Valley Delivery) Carnations Florist & Gifts
   RM69.90 - RM109.90
   KL/Selangor
   View product
 * 
   Fruits & Flora 02 valentine's 2024 Carnations Florist & Gifts
   RM229.00 - RM269.00
   KL/Selangor
   View product★★★★★7 review(s)
 * 
   Raya Blessing Hamper (Hari Raya 2024) Carnations Florist & Gifts
   RM249.00 - RM289.00
   KL/Selangor
   View product
 * 
   Golden Love Carnations Florist & Gifts
   RM119.00 - RM159.00
   KL/Selangor
   View product
 * 
   Salam Ramadhan Carnations Florist & Gifts
   RM119.00 - RM159.00
   KL/Selangor
   View product
 * 
   [Christmas 2023] Basket Surprise | (Klang Valley Delivery Only) Carnations
   Florist & Gifts
   RM259.00 - RM299.00
   KL/Selangor
   View product




SIMILAR PRODUCTS

 * 
   Hamper | Rufina Raya Hamper | Type A Mozzcato
   RM149.00 - RM184.00
   KL/Selangor
   View product
 * 
   Deepavali Hamper | Kashmir Diwali Gift Hamper | Type A Mozzcato
   RM350.00 - RM405.00
   KL/Selangor
   View product
 * 
   Special Creation Christmas Hamper (Klang Valley Delivery) Ima Bloomwood
   RM268.00 - RM300.00
   KL/Selangor
   View product
 * 
   CNY Hamper 2024 Golden Opulence (West Malaysia Delivery) Empire Hamper
   RM1,988.00
   Nationwide
   View product
 * 
   Elit Chocolate Deluxe Hamper Gift Set (West Malaysia Delivery Only) Beehive
   Chocolate Store
   RM169.90
   Nationwide
   View product
 * 
   Deepavali 2023 | Regalia Gift with Indian Sweets (Klang Valley Delivery Only)
   Nurhampers
   RM238.00 - RM278.00
   KL/Selangor
   View product
 * 5% off
   Seikhlas Raya Gift Set (Klang Valley Delivery Only) Tailored Floral
   RM407.40 - RM449.40
   View product
 * 
   Deepavali 2023 - Warmest Diwali Hamper (Klang Valley Delivery) Gifts With
   Love
   RM299.00 - RM359.00
   KL/Selangor
   View product
 * 
   Get Well Soon Snacks Hamper (Klang Valley Delivery) Ima Bloomwood
   RM112.00 - RM144.00
   KL/Selangor
   View product
 * 
   Deepavali Hamper | Magnifico Premium Diwali Gift Hamper Mozzcato
   RM1,499.00 - RM1,534.00
   KL/Selangor
   View product
 * 
   Christmas 2023: Christmas Hamper | Christmas Carol | New Year Hamper | Type B
   | (Klang Valley Delivery) Mozzcato
   RM199.00 - RM234.00
   KL/Selangor
   View product
 * 
   CNY Hamper 2024 Supreme Wealth (West Malaysia Delivery) Empire Hamper
   RM588.00
   Nationwide
   View product
 * 
   Dynasty Basket (Chinese New Year 2024) Carnations Florist & Gifts
   RM289.00 - RM339.00
   KL/Selangor
   View product
 * 
   Christmas 2023: Christmas Hamper | Christmas Magic | New Year Gift Hamper |
   Type D (Klang Valley Delivery) Mozzcato
   RM284.00 - RM334.00
   KL/Selangor
   View product
 * 
   Hari Raya 2024 - Nikmat Raya Gift Set (Nationwide Delivery) Gifts With Love
   RM89.90
   Nationwide
   View product
 * 
   Hari Raya 2024 Sketsa Aidilfitri Hamper (West Malaysia Delivery) Empire
   Hamper
   RM255.00
   Nationwide
   View product
 * 
   Spring Harmony Gift Box (Klang Valley Delivery) Mozzcato
   RM128.00 - RM168.00
   KL/Selangor
   View product
 * 
   Deepavali 2023 | Deepavali Celebration Collections (Klang Valley Delivery
   Only) Nurhampers
   RM398.00 - RM438.00
   KL/Selangor
   View product
 * 
   CNY Hamper 2024 Infinite Luck (West Malaysia Delivery) Empire Hamper
   RM6,888.00
   Nationwide
   View product
 * 
   Deepavali 2023 - Cherish Diwali Hamper (Klang Valley Delivery) Gifts With
   Love
   RM299.00 - RM359.00
   KL/Selangor
   View product
 * 
   Tannya Raya Hamper | Type B Mozzcato
   RM199.00 - RM234.00
   KL/Selangor
   View product
 * 
   CNY 2024 Prosperous Year Gift Basket (Klang Valley Only) Eska Creative
   Gifting
   RM230.00 - RM290.00
   KL/Selangor
   View product
 * 
   Hamper Rahul (Klang Valley Delivery) Ima Bloomwood
   RM278.00 - RM310.00
   KL/Selangor
   View product
 * 
   Hari Raya 2024 - Mulia Raya Hamper (West Malaysia Delivery) Gifts With Love
   RM229.00
   Nationwide
   View product
 * 10% off
   Chinese New Year 2024 – Abundance Hamper (West Malaysia Delivery Only) Gifts
   With Love
   RM188.00RM208.00
   Nationwide
   View product
 * 
   Oriental Bliss Type C (Klang Valley Delivery) Mozzcato
   RM199.00 - RM234.00
   KL/Selangor
   View product
 * 
   Chinese New Year Hampers & Flowers Set C - 笑龍滿面 (Kuching Delivery) The Moment
   Balloons
   RM108.00 - RM158.00
   Kuching
   View product
 * 
   Priya Tiffin (Klang Valley Delivery) Ima Bloomwood
   RM106.00 - RM138.00
   KL/Selangor
   View product
 * 7% off
   Cubiloxe Raya Aidilfitri Gift Set 2024 - Raya Ria [FREE DELIVERY] Cubiloxe
   RM200.00RM215.00
   KL/Selangor (Self Pick-up)
   View product
 * 
   Raya 2024: Seroja Tall Box (Cream) CHERITA CHOCOLATE
   RM59.00 - RM79.00
   KL/Selangor
   View product


Giftr is an online marketplace for gifts connecting people around the world to
sell and buy gift related products. We aim to be the go-to destination for gift
seekers to solve their gifting needs.

FIND OUT MORE

 * Blog
 * Vendors
 * How to Buy
 * Shipping & Delivery
 * Testimonial From Happy Customers
 * Campaign & Partnership
 * Help Centre & FAQ
 * Card Message Ideas
   
   

   WHO WE ARE

 * About Us
 * Join Us As Seller
 * Careers
 * Privacy Policy
 * Cookies Policy
 * Refund Policy
 * Terms

FOLLOW US

 * Facebook
 * Instagram

Newsletter
Subscribe

Loading...

THANK YOU!

You have successfully joined our subscriber list.

CONTACT US

 * Unit 2-1, Level 2, The Podium, Tower 3, UOA Business Park, No.1, Jalan
   Pengaturcara U1/51A, Seksyen U1, 40150 Shah Alam, Selangor.
 * contact@giftr.my
 * +6019 359 6194 (Currently experiencing high volume of calls. Please do reach
   out to us via chat or email from Mon-Fri, 9am-6pm excl. Public Holidays)
 * Send Feedback

Giftr Malaysia
Giftr Singapore

© 2024 Helpr Asia Sdn. Bhd. Reg. No: 201501021706 (1147034-U). All rights
reserved.

 * 
 * 
 * 
 * 
   






SAMPLE PRODUCT



Add to cart

Product successfully added to your Shopping Cart


Total Price:RM0.00
Continue Shopping
Proceed to Checkout



ENTER YOUR KEYWORD

Search

GIFTLIST
Giftlist Add and share to your loved ones, login to sync across devices
Share via Email     Save to Login Account Notify Me When Back In Stock

Giftlist empty


Share your Giftlist via Email:

Send Email

Email Sent!

Login to get notified when items are back in stock.

Login / Sign Up

You will not receive email when items in your giftlist are back in stock.

Cancel
Confirm




 



Click here

emaad in Kuala Lumpur purchased

Hot Air Balloon Chocolate (Kuala Terengganu Delivery Only)

a day ago