Menu

  • Home
  • Shop
    • Back
    • Shop
    • Dog Clothes
      • Back
      • Dog Clothes
      • Dog Shirts
      • Dog Dresses
      • Dog Costumes
      • Dog Life Jackets
      • Dog Hoodies
      • Dog Coats
      • Dog Sweaters
      • Dog Pajamas
    • Dog Toys
    • Dog Bundles
    • Dog Treats
    • Dog Bandanas
    • Dod Collars
    • Dog Owners Gifts
  • Faq
  • About Us
  • Blog
  • Contact Us
  • Affiliate
  • Login / Register

Mini Cart

  • No products in the cart.
FREE SHIPPING in USA
Menu Menu
Dog Clothes Store Brand
  • home
  • SHOP
    • DOG CLOTHES
      • DOG SHIRTS
      • DOG DRESSES
      • DOG HOODIES
      • DOG LIFE JACKETS
      • DOG RAINCOATS
      • DOG COSTUMES
      • DOG SWEATERS
      • DOG PAJAMAS
    • DOG TOYS
    • DOG BUNDLES
    • DOG TREATS
    • DOG COLLARS
    • DOG OWNERS GIFTS
    • DOG FEEDING SUPPLIES
    • GROOMING
      • DOG TOWELS
    • DOG BANDANAS
  • FAQ
  • About us
  • Blog
  • Contact us
  • Affiliate
0

    Bulk Order

    Add Line Item
    Go to Cart - Total:  |  [cart]['item_count'] [CDATA][
     -  [lineItem.searchResult]['variant_title'] ['sku']">  -  [lineItem.searchResult]['sku'] ['price']['price'] | shopifyMoneyFormat">
    Expand all [numVariants()][1000 + 2 * index + 1][CDATA][', '').replace('// ]; $scope.cart = null; $scope.hasChanges = false; $http.get('/cart.js').success(function(response) { $scope.cart = response; }); $scope.addLineItem = function(opt_initial) { $scope.lineItems.push({ searchResult: null, expanded: false, quantity: null }); if (!opt_initial) { $scope.hasChanges = true; } }; // Initialize the first empty line item in a timeout. // Certain themes look for number inputs at page load time // and replace them with custom widgets. $timeout(function() { $scope.addLineItem(true); }); $scope.updateCart = function() { $http.post('/cart/update.js', { 'updates': _.reduce($scope.lineItems, function(obj, lineItem) { if (lineItem.searchResult && _.isNumber(lineItem.quantity)) { obj[lineItem.searchResult]['variant_id']; $scope.hasChanges = false; }); }; $scope.$on('quantity-changed', function() { $scope.hasChanges = true; }); $scope.$on('delete-line-item', function(event, lineItem) { var idx = $scope.lineItems.indexOf(lineItem); if (idx != -1) { $scope.lineItems.splice(idx, 1); } }); $scope.$on('expand-all-variants', function(event, lineItem) { var idx = $scope.lineItems.indexOf(lineItem); if (idx != -1) { var args = [idx, 1]; angular.forEach(lineItem.searchResult['product']['variants'], function(variant) { var imageUrl = ''; if (variant['featured_image']['featured_image']['src']) { imageUrl = variant['featured_image']['src'] } else if (lineItem.searchResult['product']['featured_image']) { imageUrl = lineItem.searchResult['product']['featured_image']; } args.push({ quantity: lineItem.searchResult['variant_id'] == variant['id'] ? lineItem.quantity : null, expanded: true, searchResult: { 'product_title': lineItem.searchResult['product_title'], 'variant_title': variant['title'], 'variant_id': variant['id'], 'sku': variant['sku'], 'price': variant['price'], 'url': variant['url'], 'product': lineItem.searchResult['product'], 'thumbnail_url': shopifyImageUrl(imageUrl, 'thumb') } }); }); Array.prototype.splice.apply($scope.lineItems, args); } }); } function boLineItem() { return { scope: { lineItem: '=', index: '=', allLineItems: '=' }, templateUrl: 'line-item-template', controller: function($scope) { $scope.showLineItemAlreadyExistsMsg = false; $scope.selectResult = function(result) { $scope.showLineItemAlreadyExistsMsg = false; if ($scope.variantLineItemAlreadyExists(result.originalObject['variant_id']['variant_id'] == variantId) { exists = true; } }); return exists; }; $scope.quantityChanged = function() { $scope.$emit('quantity-changed'); }; $scope.deleteLineItem = function() { if (_.isNumber($scope.lineItem.quantity)) { $scope.lineItem.quantity = 0; $scope.quantityChanged(); } else { $scope.$emit('delete-line-item', $scope.lineItem); } }; $scope.numVariants = function() { return $scope.lineItem.searchResult['product']['variants'].length; }; $scope.expandAllVariants = function() { $scope.$emit('expand-all-variants', $scope.lineItem); }; } }; } function boConfigureAngucomplete($timeout) { return { restrict: 'A', link: function(scope, element, attrs) { var input = element.find('input'); input.attr('tabindex', attrs.boTabindex); $timeout(function() { input.focus(); }); } }; } function shopifyImageUrl(url, imageType) { if (url.indexOf('_' + imageType + '.') != -1) { return url; } var dotIdx = url.lastIndexOf('.'); return [url.slice(0, dotIdx), '_', imageType, url.slice(dotIdx, url.length)].join(''); } function shopifyMoneyFormat($shopifyMoneyFormatString, $sce) { return function(cents) { return $sce.trustAsHtml(Shopify.formatMoney(cents, $shopifyMoneyFormatString)); }; } function interpolator($interpolateProvider) { $interpolateProvider.startSymbol('['); $interpolateProvider.endSymbol(']['Shopify']['Shopify'] = {}; } if (!Shopify.formatMoney) { Shopify.formatMoney = function(cents, format) { if (typeof cents == 'string') cents = cents.replace('.',''); var value = ''; var patt = /\{\{\s*(\w+)\s*\}\}/; var formatString = (format || this.money_format); function addCommas(moneyString) { return moneyString.replace(/(\d+)(\d{3}[\.,]?)/,'$1,$2'); } switch(formatString.match(patt)[1]) { case 'amount': value = addCommas(floatToString(cents/100.0, 2)); break; case 'amount_no_decimals': value = addCommas(floatToString(cents/100.0, 0)); break; case 'amount_with_comma_separator': value = floatToString(cents/100.0, 2).replace(/\./, ','); break; case 'amount_no_decimals_with_comma_separator': value = addCommas(floatToString(cents/100.0, 0)).replace(/\./, ','); break; } return formatString.replace(patt, value); }; if (!window['floatToString']['floatToString'] = function(numeric, decimals) { var amount = numeric.toFixed(decimals).toString(); if(amount.match(/^\.\d+/)) {return "0"+amount; } else { return amount; } } } } } polyfillShopifyBuiltins(); angular.module('bulkOrderAppModule', ['angucomplete-alt'], interpolator) .controller('BulkOrderRootCtrl', BulkOrderRootCtrl) .directive('boLineItem', boLineItem) .directive('boConfigureAngucomplete', boConfigureAngucomplete) .filter('shopifyMoneyFormat', shopifyMoneyFormat) .value('$shopifyMoneyFormatString', BO_MONEY_FORMAT); })();

    Get in touch

    Categories

    • Dog Clothes
    • Dog Toys
    • Dog Treats
    • Dog Bundles
    • Dog Bandanas
    • Dog Collars
    • Dog Lovers Gift
    • Dog Leashes
    • Matching Baby Clothes
    • Feeding Supplies

    Information

    • About Us
    • Returns and Exchanges
    • Payment Information
    • Shipping Information

    Quick links

    • Privacy Policy
    • Terms and Conditions
    • Reward
    • Contact Us

    Subscribe to our newsletter and get 10% off your first purchase

    Copyright 2023 Olly Pet all rights reserved.
    • American Express
    • Apple Pay
    • Mastercard
    • PayPal
    • Visa

    Sign in

    Sign up

    We've sent you an email with a link to update your password.

    A password reset email has been sent to the email address on file for your account, but may take several minutes to show up in your inbox. Please wait at least 10 minutes before attempting another reset.

    Forgot your password?

    Lost your password? Please enter your email address. You will receive a link to create a new password via email.

    Your personal data will be used to support your experience throughout this website, to manage access to your account, and for other purposes described in our privacy policy.

    No account yet?

    Registering for this site allows you to access your order status and history. Just fill in the fields below, and we’ll get a new account set up for you in no time. We will only ask you for information necessary to make the purchase process faster and easier.

    Create an Account Login