def create_personas(self, number, persona_extras=None): persona_extras = persona_extras or {} addon = Addon.objects.get(id=15679) for i in xrange(number): a = Addon(type=amo.ADDON_PERSONA) a.name = 'persona-%s' % i a.all_categories = [] a.save() v = Version.objects.get(addon=addon) v.addon = a v.pk = None v.save() p = Persona(addon_id=a.id, persona_id=i, **persona_extras) p.save() a.persona = p a._current_version = v a.status = amo.STATUS_PUBLIC a.save()
def create_personas(self, number, persona_extras=None): persona_extras = persona_extras or {} addon = Addon.objects.get(id=15679) for i in range(number): a = Addon(type=amo.ADDON_PERSONA) a.name = 'persona-%s' % i a.all_categories = [] a.save() v = Version.objects.get(addon=addon) v.addon = a v.pk = None v.save() p = Persona(addon_id=a.id, persona_id=i, **persona_extras) p.save() a.persona = p a._current_version = v a.status = amo.STATUS_PUBLIC a.save()
def save(self, commit=False): data = self.cleaned_data addon = Addon.objects.create(slug=data.get('slug'), status=amo.STATUS_PENDING, type=amo.ADDON_PERSONA) addon.name = {'en-US': data['name']} if data.get('description'): addon.description = data['description'] addon._current_version = Version.objects.create(addon=addon, version='0') addon.save() # Create Persona instance. p = Persona() p.persona_id = 0 p.addon = addon p.header = 'header.png' if data['footer_hash']: p.footer = 'footer.png' if data['accentcolor']: p.accentcolor = data['accentcolor'].lstrip('#') if data['textcolor']: p.textcolor = data['textcolor'].lstrip('#') p.license = data['license'] p.submit = datetime.now() user = self.request.user p.author = user.username p.display_username = user.name p.save() # Save header, footer, and preview images. save_theme.delay(data['header_hash'], data['footer_hash'], addon) # Save user info. addon.addonuser_set.create(user=user, role=amo.AUTHOR_ROLE_OWNER) # Save tags. for t in data['tags']: Tag(tag_text=t).save_tag(addon) # Save categories. AddonCategory(addon=addon, category=data['category']).save() return addon
def save(self, commit=False): data = self.cleaned_data addon = Addon.objects.create( slug=data.get('slug'), status=amo.STATUS_PENDING, type=amo.ADDON_PERSONA) addon.name = {'en-US': data['name']} if data.get('description'): addon.description = data['description'] addon._current_version = Version.objects.create(addon=addon, version='0') addon.save() # Create Persona instance. p = Persona() p.persona_id = 0 p.addon = addon p.header = 'header.png' if data['footer_hash']: p.footer = 'footer.png' if data['accentcolor']: p.accentcolor = data['accentcolor'].lstrip('#') if data['textcolor']: p.textcolor = data['textcolor'].lstrip('#') p.license = data['license'] p.submit = datetime.now() user = self.request.user p.author = user.username p.display_username = user.name p.save() # Save header, footer, and preview images. save_theme.delay(data['header_hash'], data['footer_hash'], addon) # Save user info. addon.addonuser_set.create(user=user, role=amo.AUTHOR_ROLE_OWNER) # Save tags. for t in data['tags']: Tag(tag_text=t).save_tag(addon) # Save categories. AddonCategory(addon=addon, category=data['category']).save() return addon