module.exports = function(sequelize) { var models = sequelize.models; //Pre-populate a new database with some data. models.Category.count().then(function(count) { if(count == 0) { var basicJarIds = []; models.Venue.create({name: 'Boonville'}); models.Venue.create({name: 'Clement St Farmers Market in SF'}); models.Venue.create({name: 'Ukiah Farmers Market'}); models.Venue.create({name: 'Mendocino Farmers Market'}); models.Venue.create({name: 'Ft Bragg Farmers Market'}); models.Venue.create({name: 'Healdsburg Farmers Market'}); Promise.each([ models.Measure.create({name: 'Jar 4oz', postfix: '4oz'}), models.Measure.create({name: 'Jar 8oz', postfix: '8oz'}), models.Measure.create({name: 'Jar 12oz', postfix: '12oz'}), models.Measure.create({name: 'Jar 16oz', postfix: '16oz'}), models.Measure.create({name: 'Jar 32oz', postfix: '32oz'}), models.Measure.create({name: 'Jar 64oz', postfix: '64oz'}), models.Measure.create({name: 'Pounds', postfix: 'lbs'}), models.Measure.create({name: 'Each', postfix: ''}), models.Measure.create({name: 'Bags', postfix: 'bags'}), ], function(value, index, length) { //Collect the first 5 jar ids. if(index < 5) basicJarIds.push(value.id); }).then(function() { models.Category.create({name: 'VAP'}).then(function(category) { models.Subcategory.create({name: 'Soups'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Fava Bean Bisque', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Tomato Basil Soup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Winter Squash Soup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); models.Subcategory.create({name: 'Drink Mixes & Syrups'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Bloody Mary Mix', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Grape Syrup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Prickly Pear Syrup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Quince Syrup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Strawberry Syrup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Wild Plum Syrup', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); models.Subcategory.create({name: 'Fermented'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Napa Cabbage Sauerkraut', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Napa Cabbage Sauerkraut w/ Watercress & Espelette Pepper', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Red Sauerkraut', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); models.Subcategory.create({name: 'Dried Goods'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Dried Strawberries', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Membrillo', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Sugared Jalape�os', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); models.Subcategory.create({name: 'Spices'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Basque Pepper Powder', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Korean Pepper Powder', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Smoked Basque Pepper Powder', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); models.Item.create({name: 'Smoked Korean Pepper Powder', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); models.Subcategory.create({name: 'Specialty'}).then(function(subcategory) { category.addSubcategory(subcategory); models.Item.create({name: 'Pure Lard', counts: COUNTS_JAR}).then(function(item) { subcategory.addItem(item); }); }); }); }); } }); };